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.
Desafio
FácilSua ferramenta de notas precisa saber o que você digitou depois de node notes.js. Aqui, ela lê uma nota do comando e a repete.
- Em
notes.js, leia as palavras digitadas depois denode notes.jsusandoprocess.argv. A primeira palavra é o comando,add. Por enquanto, ele é sempreadd. Todas as palavras depois dele formam a nota. - As palavras da nota chegam como strings separadas. Junte-as novamente em uma única string, com um espaço entre as palavras.
- 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 milkPara node notes.js add Call Ada tonight, ele imprime:
Adding: Call Ada tonightColoque 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:');
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
1Executando JavaScript no Node
Olá, NodeLendo o comandoArgumentos da linha de comandoComandosPratique por conta própria: Playground de Express