2014-09-29 11 views

Odpowiedz

104

użyć polecenia list z flagą -g zobaczyć wszystkie pakiety, które są zainstalowane na całym świecie:

npm list -g

Aby sprawdzić, czy dany pakiet jest zainstalowany w systemie, można podać nazwę pakietu (grunt w tym przypadku), jak widać poniżej:

npm list -g grunt

Albo można użyć do filtrowania o grep Nazwy n pakietów:

npm list -g | grep grunt

Źródło: https://docs.npmjs.com/cli/ls

+2

Dla logiczną „zainstalowany lub nie ? " sprawdź, spróbuj użyć '--depth'. Na przykład: 'npm list --depth 1 --global csats-mturk>/dev/null 2> & 1' [Tutaj jest bardziej szczegółowy przykład] (https://gitlab.com/snippets/3883). –

+0

@AdamMonsen: Dzięki, zmieniłem Twój komentarz w odpowiedź. – Flimm

+1

@AdamMonsen, Szukałem _top poziomu_ instalacji rybitwy. Użyłem 'npm list --depth 0 --global tern' aby sprawdzić, czy tern został zainstalowany globalnie tak, jakby' npm install -g tern' – Sudhi

11

Aby sprawdzić, czy dany pakiet jest instalowany globalnie wykonać:

npm list -g [package-name] 

Weźmy "grunt" jako przykład. Jeśli jest zainstalowany w systemie, powinieneś zobaczyć coś takiego

C:\data\tryout\test1>npm list -g grunt 
C:\Users\xxxxxxx\AppData\Roaming\npm 
└── [email protected] 

Jeśli nie jest zainstalowany w systemie, powinieneś zobaczyć coś takiego

C:\data\tryout\test1>npm list -g grunt 
C:\Users\xxxxxxx\AppData\Roaming\npm 
└── (empty) 

Aby sprawdzić, czy dany pakiet jest zainstalowany lokalnie ty może wykonywać te same polecenia co powyżej, ale bez parametru -g.

źródło: How to check if npm package was installed globally or locally.

23
npm list --depth 1 --global packagename > /dev/null 2>&1 

Następnie można sprawdzić status wyjścia, aby sprawdzić, czy jest zainstalowany, czy nie. Dziękujemy Adam Monsen.

+3

dzięki dla '--depth 1'! właśnie tego szukałem.Właściwie używam teraz 'npm list --depth 0 -g' – revelt

+0

Z jakiegoś powodu' $? 'Zawsze zwraca' 1' dla mnie, nawet jeśli pakiet jest zainstalowany lub NIE zainstalowany. – Kayvar

+0

Zrobiłem problem: https://github.com/mikedeboer/node-github/issues/427 – Kayvar

0

Można wymienić wszystkich globalnych pakietów za pomocą polecenia:

npm ls -g 

lub sprawdź zadaniu pakiecie z:

npm ls -g [package-name] 

Na przykład: npm ls -g @angular/cli