Accessing Command line arguments in Node.js
In this tutorial, we are going to learn about how to access the command line arguments in a node.js program with the help of examples.
First, let’s pass the command line arguments to an app.js
file.
node app.js apple banana
Here we passed two arguments apple
, banana
.
To access the command-line arguments inside a app.js
file, we need to use the process.argv
property, which is an array that contains any arguments you passed in via command line.
const allArgs = process.argv;
console.log(allArgs);
Now, run the file again by passing the arguments you will see a similar output in the terminal.
node app.js apple banana
output:
[
'/Users/saigowtham/.nvm/versions/node/v12.14.1/bin/node',
'/Users/saigowtham/Desktop/node/app.js',
'apple',
'banana'
]
The first and second elements in the array are node executable path and JavaScript file path, from the third element onwards we will see the actual arguments we passed via command line.
If you want to remove first two arguments, you can do it by calling a slice()
method on the process.argv
property.
const allArgs = process.argv.slice(2);
console.log(allArgs);
node app.js apple banana
output:
[ 'apple', 'banana' ]
you can access individual arguments, like this.
const allArgs = process.argv.slice(2);
const firstArg = allArgs[0];
const secondArg = allArgs[1];
or you can also convert array of arguments into an object.
const allArgs = process.argv.slice(2);
const obj = {...allArgs};
➜ node app.js apple banana
{ '0': 'apple', '1': 'banana' }