npm 사용자 설치 패키지를 나열하는 방법은 무엇입니까?


628

사용자 설치 패키지 만에 npm어떻게 나열 합니까? 내가 할 때 npm -g list모든 패키지와 그 종속성을 출력하는데, 이것은 내가 원하는 것이 아닙니다.

답변:


1245

이것은 꽤 잘 작동합니다. npm list -g --depth=0

  • npm : 노드 패키지 관리자 명령 행 도구
  • list -g : 사용자 폴더에있는 모든 패키지의 트리를 표시합니다 (-g 옵션없이 현재 디렉토리의 패키지 만 표시 함).
  • depth 0 / — depth = 0 : 트리 뷰에 모든 패키지의 종속성을 포함시키지 마십시오

빈 결과를 반환합니다. 내 npm 버전은 3.6.0입니다.
Bagusflyer

4
--depth=0내가 실행할 때 옵션이 언급되지 않은 이유는 무엇 npm help ls입니까?
Marecky

를 사용하여 다른 폴더에 모듈을 설치 하는 경우이 명령에 너무 --prefix추가해야합니다 . --prefixnpm list
Sany Liew

1
또한 | grep -v "duped"목록에서 중복 된 종속성을 제거 하기 위해 추가 하는 것이 좋습니다.
Spencer Pollock

1
창문에서 완벽하게 작동했습니다.
sunny prakash

132

다음을 사용하여 전체적으로 설치된 모든 모듈 목록을 얻을 수 있습니다.

ls `npm root -g`


13
ls -lh `npm root -g`멋진 목록으로 표시합니다.
LanceLafontaine

3
이 솔루션은 최고 투표 솔루션보다 훨씬 빠릅니다.
DarkNeuron

3
이 솔루션은 훌륭하지만 멋진 npm list -g --depth=0 버전을 인쇄합니다. 어쨌든, 나는이 명령에 대해 몰랐으므로 +1했습니다.
pixel 67

3
npm root -g | gci에서 Powershell에
Lars

1
@scoped 모듈에서는 작동하지 않습니다.
Franz Sittampalam

113

2015 년 12 월 13 일 현재

npm 목록 그림

나는 받아 들인 대답이 100 % 정확하고 유용하다는 것을 알았지 만 내 경험을 바탕으로 조금 더 확장하고 싶었고 다른 사람들의 이익을 위해서도 희망을 두었습니다. (여기서 패키지와 모듈이라는 용어를 서로 바꾸어 사용하고 있습니다)

질문에 대한 대답으로 예, 허용되는 대답은 다음과 같습니다.

npm list -g --depth=0

grep을 사용할 수있을 때 * nix 시스템에 글로벌로 설치된 특정 모듈을 점검 할 수 있습니다. 이것은 사용중인 모듈의 버전을 확인할 때 특히 유용합니다 (전역 설치, 로컬 모듈을 확인하는 경우 -g 플래그 만 제거).

npm list -g --depth=0 | grep <module_name>

특정 모듈에 사용 가능한 모든 (원격) 버전을 보려면 다음을 수행하십시오.

npm view <module_name> versions

참고 버전은 복수입니다. 그러면 선택할 수있는 전체 버전 목록이 제공됩니다.

최신 원격 버전의 경우 :

npm view <module_name> version  

참고 버전은 단수입니다.

어떤 패키지를 업데이트해야하는지 확인하려면

npm outdated -g --depth=0

글로벌 패키지를 업데이트하려면

npm update -g <package>

모든 글로벌 패키지를 업데이트하려면 다음을 사용하십시오.

npm update -g

그러나 2.6.1 미만의 npm 버전의 경우 모든 패키지를 전체적으로 업데이트하는 데 권장되는 특수 스크립트가 있으므로이 링크 도 참조하십시오 .

위의 명령은 NPM 버전 1.3.x, 1.4.x, 2.x 및 3.x에서 작동해야합니다.


특정 글로벌 패키지를 업데이트하려면 다음을 수행하십시오 npm update -g <package>. npm이 똑똑하고 지정된 패키지가 오래 된 경우에만 설치를 수행하기 때문에 여기에 update바람직 하다고 생각 install합니다.
Robin A. Meade

1
@Talespin_Kit 아마 screentogif
forresthopkinsa

@Talespin_Kit ShareX는 gif 스크린 샷 (및 기타 스크린 샷)을 만들고 공유하기위한 FANTASTIC입니다.
Aaron Bell


20

프로젝트 종속성의 경우 다음을 사용하십시오.

npm list --depth=0

전역 종속성의 경우 다음을 사용하십시오.

npm list -g --depth=0

17
npm ls

npm list 에 대한 별칭입니다 npm ls

확장 된 정보 사용

npm la    
npm ll

당신은 항상 --depth=0첫 번째 수준의 깊이를 얻을 수 있도록 끝에 설정할 수 있습니다 .

npm ls --depth=0

개발 및 프로덕션 패키지를 확인할 수 있습니다.

npm ls --only=dev
npm ls --only=prod

정보를 표시하려면 json 형식으로

npm ls --json=true

디폴트는 false

npm ls --json=false

확장 된 정보를 표시하기 위해 긴 형식을 요구할 수 있습니다.

npm ls --long=true

트리 뷰 대신 구문 분석 가능한 출력을 표시 할 수 있습니다.

npm ls --parseable=true

현재 프로젝트 대신 글로벌 설치 접두사로 패키지를 나열 할 수 있습니다.

npm ls --global=true
npm ls -g // shorthand

전체 문서는 여기에서 찾을 수 있습니다 .


8

노드에는 로컬 모듈 및 글로벌 모듈의 개념이 있습니다

로컬 모듈 은 현재 프로젝트 디렉토리 내에 있습니다.

전역 모듈 은 일반적으로 사용자의 홈 디렉토리에 있지만 전역 모듈이있는 경로를 변경할 수 있습니다.

  1. 현재 디렉토리 내의 로컬 모듈을 나열합니다. npm list
  2. 글로벌 모듈 나열 : npm list --globalORnpm list --g // 모든 최상위 모듈을 종속 항목과 함께 나열합니다.
  3. 최상위 (설치된 모듈) 전역 모듈 만 나열 : npm list -g --depth=0

7

한 가지 방법은 다음을 사용하여 모듈의 루트 디렉토리를 찾는 것입니다.

npm root
/Users/me/repos/my_project/node_modules

그런 다음 해당 디렉토리를 나열하십시오 ...

ls /Users/me/repos/my_project/node_modules
grunt                   grunt-contrib-jshint

이 경우 사용자 설치 패키지는 grunt 및 grunt-contrib-jshint입니다.


1
공식 내장 npm 명령을 사용하지 않는 이유는 무엇입니까? npm list -g --depth=0
Kukks

이 방법은 개발자가 어떤 일이 벌어지고 있는지 이해하는 데 도움이 될 수 있습니다.
obimod

1
이것은 100 % 정확하지 않습니다. 명령을 실행하면 나 npm root 에게 알려줍니다 Users/me/node_modules . 정확하지 않습니다. 내 node_modules는 다른 곳에 있습니다. 노드 설치 방법에 따라 다릅니다. brew소프트웨어를 설치 하는 데 사용 합니다. 패키지 설치 프로그램을 사용하여 웹 사이트에서 노드를 설치하면 이것이 맞습니까?
pixel 67

환경 변수에 달려 있다고 생각합니다. 환경에 설정된 $ NPM ... vars를 확인하십시오. virtualenv와 activate hook을 사용하여 프로젝트가 사용하는 것에 따라 $ PATH를 처음부터 완전히 다시 작성하는 사용자 정의 설정이 있습니다.
obimod

2
나를 위해, npm이 깨져서 명령을 사용할 수 없었습니다. 전체 재설치를 원했기 때문에 다시 빌드하기 위해 전체적으로 설치 한 패키지를 알아야했습니다.
bryjohns


5

글로벌 공간에서 npm -g outdated --depth=0오래된 버전을 나열 하는 데 사용
합니다.


3

Node_modules에는 사용자 설치 패키지가 포함되어 있으므로 디렉토리를 node_modules로 변경하고 항목을 나열하십시오. 코어 모듈lib/폴더 의 노드 소스에 정의되어 있습니다.

Example:

     example@example:~/:~/node_modules$ ls
     express  maxmind-native  node-whois  socket.io  ua-parser-js
     geoip    mongoskin       pdfkit      tail       zeromq
     maxmind  nodemailer      request     ua-parser  zmq

3

NPM Desktop Manager를 사용해 볼 수 있습니다 NPM 데스크탑 관리자

한 번의 클릭으로, 당신은 설치 / 제거 패키지의 수 dev또는 global상태를 표시합니다.



2

간단히 말해서 다음을 실행할 수 있습니다.

npm ls -g --depth=0

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.