Node.js에서 process.argv는 프로세스에 전달된 인수를 저장하는 배열입니다. 이 배열은 프로세스를 실행할 때 명령줄에서 전달되는 인수들을 담고 있습니다. process.argv는 Node.js의 기본 내장 모듈인 process 모듈의 속성 중 하나입니다. 이번 글에서는 Node.js에서 process.argv가 무엇인지, 어떻게 사용하는지에 대해 자세히 설명해보겠습니다.
process.argv 소개
process.argv는 Node.js에서 기본적으로 제공하는 객체입니다. 이 객체는 Node.js 애플리케이션 실행 시점에서 명령행에서 전달된 인수(argument)들의 배열(Array)을 담고 있습니다. 이 배열의 첫 번째 원소는 Node.js 실행 파일(node)의 경로이며, 두 번째 원소부터는 명령행에서 전달된 인수들이 순서대로 들어있습니다.
예를 들어, 다음과 같이 node 명령어로 실행할 때
node myScript.js arg1 arg2 arg3
myScript.js 파일에서 process.argv를 출력해보면 다음과 같습니다.
console.log(process.argv);
[ '/usr/bin/node', '/path/to/myScript.js', 'arg1', 'arg2', 'arg3']
첫 번째 원소는 Node.js 실행 파일의 경로이며, 두 번째 원소는 myScript.js 파일의 경로입니다. 이후에 전달된 arg1, arg2, arg3는 순서대로 세 번째, 네 번째, 다섯 번째 원소입니다.
process.argv 사용하기
process.argv를 이용하면 Node.js 애플리케이션에서 명령행 인수를 사용할 수 있습니다. 이를 통해 실행 시점에서 사용자로부터 다양한 인자를 받아와서 해당 인자에 맞는 로직을 수행할 수 있습니다.
다음 예제는 명령행에서 전달된 인자를 이용해서 간단한 덧셈 계산을 수행하는 예제입니다.
const args = process.argv.slice(2); // 첫 번째와 두 번째 인수는 불필요한 경로 정보이므로 제거
const num1 = parseInt(args[0]);
const num2 = parseInt(args[1]);
if (isNaN(num1) || isNaN(num2)) {
console.log('Please provide valid numbers');
} else {
const sum = num1 + num2;
console.log(`The sum of ${num1} and ${num2} is ${sum}`);
}
위 코드에서는 process.argv.slice(2)를 통해 불필요한 첫 번째와 두 번째 원소를 제거한 후, 나머지 인수를 args 변수에 담았습니다. 이후 args[0], args[1]에 담긴 값들을 parseInt를 이용해 숫자로 변환하여 계산할 수 있습니다.
'IT > node.js' 카테고리의 다른 글
Node.js module.exports (0) | 2023.04.27 |
---|---|
Node.js fs 모듈 사용법 (0) | 2023.04.27 |
Node.js 파일 실행 방법 (0) | 2023.04.26 |
Node.js REPL 이란? (0) | 2023.04.25 |
Node.js 설치하기 (0) | 2023.04.24 |
댓글