Argumentos de línea de comandos
Parte de la sección Conceptos básicos de Node.js del Journey de Node.js de Coddy. Lección 3 de 33.
Una herramienta de notas tiene que saber qué escribiste después de su nombre.
process.argv es una matriz de las palabras del comando: la ruta a Node, la ruta a tu archivo y, después, tus palabras. slice(2) conserva solo las tuyas.
// node greet.js Ada
const args = process.argv.slice(2);
console.log(`Hello, ${args[0]}!`);node greet.js Ada imprime Hello, Ada!. Cada palabra llega como su propia cadena, así que node greet.js Ada Lovelace asigna a args el valor ['Ada', 'Lovelace']. Para volver a poner las palabras en una sola cadena, usa join(' '): ['Ada', 'Lovelace'].join(' ') es 'Ada Lovelace'. Las comillas mantienen juntas las palabras: node greet.js "Ada Lovelace" da una sola cadena.
Desafío
FácilTu herramienta de notas necesita saber qué escribiste después de node notes.js. Aquí lee una nota del comando y te la repite.
- En
notes.js, lee las palabras escritas después denode notes.jsconprocess.argv. La primera palabra es el comando,add. Por ahora, siempre esadd. Cada palabra que viene después es la nota. - Las palabras de la nota llegan como cadenas separadas. Júntalas de nuevo en una sola cadena, con un espacio entre las palabras.
- Reemplaza la línea inicial
console.log('Adding:'). Imprime una línea:Adding:seguida de la nota.
Para node notes.js add Buy milk, el programa imprime:
Adding: Buy milkPara node notes.js add Call Ada tonight, imprime:
Adding: Call Ada tonightPon un espacio después de Adding:.
Pruébalo: en la terminal, escribe add Buy milk en el cuadro después de $ node notes.js y presiona Enter. Verás Adding: Buy milk. Luego escribe una nota propia, como add Call Ada tonight. Por último, escribe solo add: verás Adding: sin nada después, porque no hay ninguna nota. Por ahora, está bien.
Pruébalo tú mismo
// Tu herramienta de notas comienza aquí.
// node notes.js add Buy milk debería imprimir: Adding: Buy milk
console.log('Adding:');
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Conceptos básicos de Node.js
1Ejecutar JavaScript en Node
Hola, NodeLeer el comandoArgumentos de línea de comandosComandosPractica por tu cuenta: Playground de Express