by Sai gowtham

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.

app.js
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.

app.js
const allArgs = process.argv.slice(2);

console.log(allArgs);
node app.js apple banana

output:

[ 'apple', 'banana' ]

you can access individual arguments, like this.

app.js
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' }

Top Udemy Courses

JavaScript - The Complete Guide 2020 (Beginner + Advanced)
JavaScript - The Complete Guide 2020 (Beginner + Advanced)
26,545 students enrolled
52 hours of video content
View Course
React - The Complete Guide (incl Hooks, React Router, Redux)
React - The Complete Guide (incl Hooks, React Router, Redux)
221,520 students enrolled
44 hours of video content
View Course
Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)
Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)
114,575 students enrolled
21 hours of video content
View Course