Menu
CoddyTech

Argumentos da linha de comando

Parte da seção Fundamentos de Node.js do Journey de Node.js da Coddy. Lição 3 de 33.

Uma ferramenta de notas precisa saber o que você digitou depois do nome dela.

process.argv é um array com as palavras do comando: o caminho para o Node, o caminho para o seu arquivo e, depois, as suas palavras. slice(2) mantém apenas as suas palavras.

// node greet.js Ada
const args = process.argv.slice(2);
console.log(`Hello, ${args[0]}!`);

node greet.js Ada exibe Hello, Ada!. Cada palavra chega como uma string própria, então node greet.js Ada Lovelace atribui a args o valor ['Ada', 'Lovelace']. Para juntar as palavras em uma única string, use join(' '): ['Ada', 'Lovelace'].join(' ') é 'Ada Lovelace'. As aspas mantêm as palavras juntas: node greet.js "Ada Lovelace" fornece uma única string.

challenge icon

Desafio

Fácil

Sua ferramenta de notas precisa saber o que você digitou depois de node notes.js. Aqui, ela lê uma nota do comando e a repete.

  1. Em notes.js, leia as palavras digitadas depois de node notes.js usando process.argv. A primeira palavra é o comando, add. Por enquanto, ele é sempre add. Todas as palavras depois dele formam a nota.
  2. As palavras da nota chegam como strings separadas. Junte-as novamente em uma única string, com um espaço entre as palavras.
  3. Substitua a linha console.log('Adding:') inicial. Imprima uma linha: Adding: seguida da nota.

Para node notes.js add Buy milk, o programa imprime:

Adding: Buy milk

Para node notes.js add Call Ada tonight, ele imprime:

Adding: Call Ada tonight

Coloque um espaço depois de Adding:.

Experimente: no terminal, digite add Buy milk na caixa depois de $ node notes.js e pressione Enter. Você verá Adding: Buy milk. Depois, digite uma nota sua, como add Call Ada tonight. Por último, digite apenas add: você verá Adding: sem nada depois, porque não há uma nota. Por enquanto, tudo bem.

Experimente você mesmo

// Sua ferramenta de anotações começa aqui.
// node notes.js add Buy milk deve imprimir: Adding: Buy milk
console.log('Adding:');
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos de Node.js

Pratique por conta própria: Playground de Express