티스토리 뷰

카테고리 없음

Node.js) commander 사용

이불이! 2019. 5. 10. 21:44
728x90

cli 프로그램은 모든 경우의 수를 직접 만들기 힘들다

그래서 편하게 만들어 주는 프레임 워크가 존재한다.

1. > npm i commander inquirer chalk

inquire: 사용자와 대화형으로 소통

chalk: cmd에 색을 입혀준다

 

2. command.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env node
const program = require('commander') ;
 
//commander 프로그램의 장점 : 사용설명서가 자동으로 생성해줌
 
program
 .version('0.0.1''-v, --version' )
 .usage('[option]') ; // 이 프로그램을 어떻게 사용해야지에 대한 설명
 
program
 .command('template <type>')
 .usage('--name <name> --path [path]')
 .description('템플릿을 생성합니다.'
 .alias('tmpl'//템플릿 명령어
 .option('-n, --name <name>''파일명을 입력하세요 : ''index')
 .option('-d, --directory [path]''생성 경로를 입력하세요 : ''.')
 .action((type, options) => {
    console.log(type, options.name, options.directory) ;
 }) ;
 // -- : 옵션 , - : 단축옵션 / <> : 필수 / [] : 선택
 
program // 이 위의 옵션과 다른 액션을 했을 경우
 .command('*', { noHelp: true }) //만약 다른 명령어를 입력했을 경우 noHelp가 true 이면 도움말에 해당 명령어 설명 x
 .action(() => {
    console.log('해당 명령어를 찾을 수 없습니다!!') ;
 }) ;
 
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5; text-decoration:none">Colored by Color Scripter
http://colorscripter.com/info#e" target="_blank" style="text-decoration:none; color:white">cs

 

3. package.json 에 경로 변경

4. >npm i -g

5.