반응형
https://nodejs.org/docs/latest-v19.x/api/
Index | Node.js v19.9.0 Documentation
nodejs.org
노드 문서
node 에 진입 후
process를 입력하면
버전과 정보에 대해서 나온다.
그 중에 argv 라는 것을 알아보자
process.argv 를 콘솔에 찍어보면
console.log(process.argv);

이렇게 나오는데
마치 함수의 인수를 나타내는 argument와 비슷하다
create.js 뒤에 추가로 입력하면 인수로 전달가능하다
들어온 값은 인덱스로 표현되고
0과 1번은 노드와 해당파일을 나타내니
2번 부터 사용하면 된다
node create.js test
이러면 test라는 인수가 전달되고
process.argv[2]로 test를 받을 수 있다.
그리고 문서를 보면
file system이라는 함수도 있는데
fs로 사용한다.
mkdir, writeFile 로 디렉토리와 파일을 만들 수 있다.
fs.mkdirSync(파일명);
fs.writeFileSync(파일명)
뒤에 Sync를 붙이면 동기식으로 사용이 가능하다.
동기식으로 사용하겠다.
위에서 process로 받은 인수로 폴더명을 정하고
아래에 3개의 파일을 만들어보겠다.
const fs = require('fs');
const foldName = process.argv[2] || 'default';
console.log(process.argv);
try {
fs.mkdirSync(foldName);
fs.writeFileSync(`${foldName}/index.html`,'')
fs.writeFileSync(`${foldName}/app.js`,'')
fs.writeFileSync(`${foldName}/style.css`,'')
} catch (e) {
console.error(e);
}
err의 상황을 대비해 try catch 문을 사용했다.
문서에는 writeFileSync에 인수로 data값을 넣어줘야해서 빈 문자열을 넣어주었다 ' '
빼먹으면 타입 에러가 발생한다
반응형
'nodejs' 카테고리의 다른 글
[node.js] express 시작 (0) | 2023.05.03 |
---|---|
[node.js] install, init, node_modules, package.json (0) | 2023.05.01 |
[node.js] module.exports (0) | 2023.04.28 |
[node.js] 설치, REPL, 파일 실행 (0) | 2023.04.21 |
터미널 명령 (0) | 2023.04.20 |