Node.js NPM CLI

NPM(Node Package Manager) CLI 명령어

npm(Node Package Manager)은 두가지의 주요 기능을 지니고 있다.

  • NPMSearch 에서 탐색 가능한 Node.js 패키지/모듈 저장소
  • Node.js 패키지 설치 및 버전 / 호환성 관리를 할 수 있는 커맨드라인 유틸리티

npm 명령어는 명령 프롬프트에 입력하는 커맨드라인 명령어로, 다양한 명령어가 많지만, 그중에서도 자주 쓰이는 것들에 대해 추스려 정리한다.

npm 기본 명령어

1
2
3
$ npm -v 혹은 npm --version # npm 버전확인(npm이 제대로 설치되있는지 확인시 사용가능)
$ npm i npm -g # npm 구버전 최신버전으로 업데이트
$ npm help 혹은 npm -h # npm 명령어에 대한 설명

npm 설치 관련 명령어

1
2
3
4
5
6
7
8
$ npm init # package.json 파일 생성(새로운 프로젝트나 패키지를 만들 때 사용)
$ npm i 혹은 install -g {{package module}} # 전역 패키지 설치
$ npm i 혹은 install {{package module}} # 프로젝트내에 패키지 설치
$ npm i 혹은 install {{package module}} --save 혹은 -S # package.json 파일에 dependencies로 패키지 설치(필수 패키지일 경우)
$ npm i 혹은 install {{package module}} --save-dev 혹은 -D # package.json 파일에 devDependencies로 패키지 설치(개발용 패키지일 경우)
$ npm un 혹은 uninstall {{package module}} # 패키지 삭제
$ npm update {{package module}} # 설치한 패키지 업데이트
$ npm dedupe # 중복된 패키지들 정리(가끔 사용하면 용량을 줄일수 있다)

npm 조회 관련 명령어

1
2
3
4
5
6
7
$ npm root # node_modules의 위치
$ npm outdated # 오래된 패키지가 있는지 알려줌(오래되었고 package.json에 적어둔 버전 범위와 일치하면 빨간색으로, 오래되었지만 버전 범위와 일치하지 않으면 노란색으로 표시)
$ npm list 혹은 npm ls # 설치한 패키지 목록 조회
$ npm ls -g --depth=0 # 설치한 전역 패키지 상위 뎁스 목록 조회
$ npm search {{package module}} # 패키지 검색(처음 이용 할 때 메모리를 굉장히 많이 잡아 먹는다. 클라우드 IDE를 사용하거나 서버에 램이 1G 정도라면 매우 오래걸리거나 에러가 난다. 그럴경우 https://npmsearch.com/ 에서 검색을 하면 된다.)
$ npm owner # 패키지의 작성자 확인
$ npm bugs # 버그가 발생했을 때 어떻게 패키지의 작성자 에게 연락을 취할지 알려준다.(주로 Github의 issues 탭을 연다.)

npm 실행 관련 명령어

1
2
3
4
5
$ npm start # package.json의 scripts에 있는 start 명령어를 실행(만약 start 명령어를 따로 설정하지 않았다면 node server.js가 실행된다)
$ npm stop # npm start 했던 것을 멈춤
$ npm restart # npm stop 후에 다시 npm start
$ npm test# package.json의 scripts에 있는 test 명령어를 실행합니다.
$ npm run # 그 이외의 scripts를 실행(예를 들어 scripts에 build 명령어가 있다하면, npm run build 명령어를 실행하면 된다)

npm 설정 관련 명령어

1
2
3
$ npm cache # npm 내의 cache를 보여준다.(만약 npm에 문제가 생기거나 하면 제일 먼저 하는 게 npm cache clean으로 cache를 삭제할 수 있다)
$ npm rebuild # npm을 다시 설치(에러가 발생했을 시 주로 npm cache clean을 한 후 이 명령어를 쳐서 재설치할 수 있다)
$ npm config # npm의 설정을 조작(npm config list 하면 현재 설정들을 볼 수 있고, npm set [이름] [값], npm get [이름]으로 속성을 설정하거나 조회할 수 있다)

npm 로그인 관련 명령어

1
2
3
$ npm adduser 혹은 npm login # npm에 회원가입할 시 사용.(로그인도 가능하다.)
$ npm logout # logout할 때 사용.
$ npm whoami # 로그인한 상태라면 자신의 아이디를 알려준다.

npm 출시 관련 명령어

1
2
3
4
5
6
7
$ npm registry # 출시된 패키지들에서 중복된 이름이 있는지 확인
$ npm publish # 패키지를 직접 출시하거나 버전 업그레이드를 할 때 사용(.gitignore 또는 .npmignore 파일에 적혀있지 않은 파일들은 npm 저장소에 업로드되어 출시된다. 단, 이 명령어를 사용하려면 npm에 로그인한 상태여야 한다. 그리고 패키지의 이름은 선점하는 사람이 계속 쓰기 때문에 이름을 선점하는 것도 중요하다.)
$ npm deprecate # 이미 출시한 패키지를 사용하지 않도록 권고(자신이 어떤 버전을 출시했는데 치명적인 버그가 있다면 이 명령어를 사용해서 다른 사람들에게 사용하지 말도록 알려줄 수 때 사용.)
$ npm unpublish # 출시한 패키지를 다시 삭제(deprecate를 쓰는 게 나을 수 있는게 이미 자신의 패키지를 다운로드한 사람들에게 피해를 입힐 수 있다)
$ npm star # 자신이 좋아하는 패키지를 표시하는 기능(star이 많을 수록 인기 패키지이기도 하다.)
# npm starts # 특정 사람이 star한 패키지 목록 확인
$ npm version # 버전 업데이트를 할 때 사용

참조

공유하기