Come elencare i pacchetti installati dall'utente npm?


630

Come posso elencare SOLO il pacchetto installato dall'utente npm? Quando lo faccio npm -g listgenera ogni pacchetto e le loro dipendenze, che non è quello che voglio.

Risposte:


1247

Funziona abbastanza bene anche: npm list -g --depth=0

  • npm : lo strumento da riga di comando del gestore pacchetti nodo
  • list -g : mostra un albero di ogni pacchetto trovato nelle cartelle dell'utente (senza l'opzione -g mostra solo i pacchetti della directory corrente)
  • depth 0 / - depth = 0 : evita di includere le dipendenze di ogni pacchetto nella vista ad albero

Restituisce un risultato vuoto. La mia versione di npm è 3.6.0.
Bagusflyer,

4
Perché l' --depth=0opzione non è menzionata quando corro npm help ls?
Marecky

Se installi i tuoi moduli in un'altra cartella usando --prefix, allora devi aggiungere --prefixanche questo in questo npm listcomando.
Sany Liew,

1
Potrebbe anche essere utile aggiungere | grep -v "duped"per rimuovere le dipendenze duplicate nell'elenco
Spencer Pollock

1
ha funzionato perfettamente su Windows.
Sunny Prakash,

132

Puoi ottenere un elenco di tutti i moduli installati a livello globale usando:

ls `npm root -g`


13
ls -lh `npm root -g`li visualizza in una bella lista.
LanceLafontaine,

3
Questa soluzione è molto più veloce di quella più votata.
DarkNeuron,

3
Questa soluzione è carina ma npm list -g --depth=0 che stampa la versione che è carina. Comunque, non sapevo di questo comando quindi +1 per quello.
pixel 67

3
npm root -g | gciin Powershell su windows
Lars

1
questo non funziona per i moduli @scoped
Franz Sittampalam,

113

Dal 13 dicembre 2015

illustrazione elenco npm

Mentre ho trovato la risposta accettata al 100% corretta e utile, desideravo ampliarla un po 'sulla base delle mie esperienze e, si spera, anche a beneficio degli altri. (Qui sto usando i termini pacchetto e modulo in modo intercambiabile)

In risposta alla domanda, sì, la risposta accettata sarebbe:

npm list -g --depth=0

Potresti voler controllare un particolare modulo installato a livello globale, su sistemi * nix / quando grep è disponibile. Ciò è particolarmente utile quando si controlla quale versione di un modulo si sta utilizzando (installato globalmente, basta rimuovere il flag -g se si controlla un modulo locale):

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

Se desideri visualizzare tutte le versioni (remote) disponibili per un determinato modulo, procedi nel seguente modo:

npm view <module_name> versions

Nota, le versioni sono al plurale. Questo ti darà l'elenco completo delle versioni tra cui scegliere.

Per l'ultima versione remota:

npm view <module_name> version  

Nota, la versione è singolare.

Per scoprire quali pacchetti devono essere aggiornati, è possibile utilizzare

npm outdated -g --depth=0

Per aggiornare i pacchetti globali, è possibile utilizzare

npm update -g <package>

Per aggiornare tutti i pacchetti globali, è possibile utilizzare:

npm update -g

(Tuttavia, per le versioni npm precedenti alla 2.6.1, vedere anche questo collegamento in quanto esiste uno script speciale consigliato per l'aggiornamento globale di tutti i pacchetti).

I comandi sopra dovrebbero funzionare su tutte le versioni di NPM 1.3.x, 1.4.x, 2.xe 3.x


Per aggiornare un pacchetto globale specifica: npm update -g <package>. Credo che updatesia preferibile installqui perché npm sarà intelligente e eseguirà l'installazione solo se il pacchetto specificato è obsoleto.
Robin A. Meade,

1
@Talespin_Kit probabilmente screentogif
forresthopkinsa

@Talespin_Kit ShareX è FANTASTICO per la creazione e la condivisione di schermate gif (e qualsiasi altra schermata).
Aaron Bell,


20

Per le dipendenze del progetto utilizzare:

npm list --depth=0

Per le dipendenze globali utilizzare:

npm list -g --depth=0

17
npm ls

npm list è solo un alias per npm ls

Per l'uso esteso delle informazioni

npm la    
npm ll

Puoi sempre impostare --depth=0alla fine per approfondire il primo livello.

npm ls --depth=0

Puoi controllare i pacchetti di sviluppo e produzione.

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

Per mostrare le informazioni in jsonformato

npm ls --json=true

L'impostazione predefinita è false

npm ls --json=false

Puoi insistere sul formato lungo per mostrare informazioni estese.

npm ls --long=true

È possibile mostrare un output analizzabile anziché la vista ad albero.

npm ls --parseable=true

È possibile elencare i pacchetti nel prefisso di installazione globale anziché nel progetto corrente.

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

La documentazione completa è disponibile qui .


8

Il nodo ha un concetto di moduli locali e moduli globali

I moduli locali si trovano nella directory di progetto corrente.

I moduli globali si trovano generalmente nella home directory dell'utente, sebbene possiamo cambiare il percorso in cui risiedono i moduli globali.

  1. Elenca i moduli locali nella directory corrente: npm list
  2. Elenca i moduli globali: npm list --globalOPPURE npm list --g // Elenca tutti i moduli di livello superiore con le sue dipendenze
  3. Elencare solo i moduli globali di livello superiore (moduli installati): npm list -g --depth=0

7

Un modo potrebbe essere quello di trovare la directory principale dei moduli usando:

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

E quindi elenca quella directory ...

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

I pacchetti installati dall'utente in questo caso sono grunt e grunt-contrib-jshint


1
Perché non usare il comando npm incorporato ufficiale? npm list -g --depth=0
Kukks,

In questo modo potrebbe aiutare lo sviluppatore a capire cosa sta succedendo sotto il cofano
obimod

1
Questo non è corretto al 100%. Quando eseguo il comando npm root mi dice: Users/me/node_modules che non è corretto. Il mio node_modules vive da qualche altra parte. Immagino che dipenda da come installi il nodo. Uso brewper installare il mio software. Immagino che questo sia se installi il nodo dal loro sito Web usando il loro programma di installazione del pacchetto?
pixel 67

Penso che dipenda dalle variabili di ambiente. Dai un'occhiata ai $ NPM ... impostati nel tuo enviro. Ho una configurazione personalizzata, usando virtualenv e il gancio di attivazione per riscrivere completamente $ PATH da zero a seconda dell'uso del progetto.
obimod

2
Per me, il mio npm si è rotto quindi non ho potuto usare i comandi. Volevo fare una reinstallazione completa, quindi avevo bisogno di sapere quali pacchetti avevo installato a livello globale per ricostruire.
bryjohns,

6

Per vedere l'elenco di tutti i pacchetti installati.

$ npm ls --parseable | awk '{gsub(/\/.*\//,"",$1); print}'| sort -u

mostra analizzabile l'elenco dei pacchetti npm https://docs.npmjs.com/cli/ls#parseable


Questo è fantastico! Come posso semplicemente mostrare le dipendenze degli sviluppatori?
Michael Bruce,

5

Uso npm -g outdated --depth=0per elencare versioni obsolete
nello spazio globale.


3

Node_modules contiene pacchetti installati dall'utente, quindi cambia la directory in node_modules ed elenca gli elementi. I moduli principali sono definiti nell'origine del nodo nella lib/cartella.

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


2

Usa npm liste filtra per contiene usandogrep

Esempio:

npm list -g | grep name-of-package

2

Come scorciatoia, puoi eseguire:

npm ls -g --depth=0

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.