Pertanyaan Temukan versi paket npm yang terpasang


Bagaimana menemukan versi node.js / npm yang diinstal paket?

Ini mencetak versi npm itu sendiri:

npm -v <package-name>

Ini mencetak kesalahan cryptic:

npm version <package-name>

Ini mencetak versi paket di registri (mis. versi terbaru yang tersedia):

npm view <package-name> version

Bagaimana cara mendapatkan versi yang diinstal?


1573
2018-06-10 20:36


asal


Jawaban:


npm list untuk paket lokal atau npm list -g untuk paket yang dipasang secara global.

Anda dapat menemukan versi paket tertentu dengan memberikan namanya sebagai argumen. Sebagai contoh, npm list grunt akan menghasilkan:

projectName@projectVersion /path/to/project/folder
└── grunt@0.4.1

Atau, Anda bisa langsung berlari npm list tanpa melewatkan nama paket sebagai argumen untuk melihat versi semua paket Anda:

├─┬ cli-color@0.1.6 
│ └── es5-ext@0.7.1 
├── coffee-script@1.3.3 
├── less@1.3.0 
├─┬ sentry@0.1.2 
│ ├── file@0.2.1 
│ └── underscore@1.3.3 
└── uglify-js@1.2.6 

1930
2018-06-11 19:13



Cara cepat lain untuk mengetahui paket apa yang diinstal secara lokal dan tanpa ketergantungan mereka adalah menggunakan:

npm list --depth=0

Yang memberi Anda sesuatu seperti

├── bower@0.8.6
├── grunt@0.4.1
├── grunt-bower-requirejs@0.4.3
├── grunt-contrib-clean@0.4.1
├── grunt-contrib-coffee@0.7.0
├── grunt-contrib-copy@0.4.1
├── grunt-contrib-imagemin@0.1.4
├── grunt-contrib-jshint@0.1.1
├── grunt-contrib-livereload@0.1.2
├── grunt-contrib-requirejs@0.4.1
├── grunt-regarde@0.1.1
└── grunt-svgmin@0.1.0

Tentunya, hal yang sama dapat dilakukan secara global dengan npm list -g --depth=0.

Metode ini lebih jelas jika Anda telah menginstal banyak paket.

Untuk mengetahui paket mana yang perlu diperbarui, Anda dapat menggunakan npm outdated -g --depth=0.


705
2018-05-23 01:50



npm view <package> version - mengembalikan versi terbaru yang tersedia pada paket.

npm list --depth=0 - mengembalikan versi semua modul yang diinstal tanpa dependensi.

npm list - mengembalikan versi semua modul dan dependensi.

Dan terakhir untuk mendapatkan versi node: node -v


164
2017-07-01 03:03



npm info YOUR_PACKAGE version

misalnya

npm info grunt version
0.4.5

70
2018-06-24 03:21



Saya baru saja digunakan npm list | grep <package name> dan itu berhasil dengan baik

Pada windows berjalan:

npm list | find <package name>

Dalam PowerShell jalankan:

npm list | sls <package name>


38
2018-01-27 12:39



Dari akar paket lakukan:

node -p "require('./package.json').version"

EDIT: (jadi Anda perlu cd ke direktori home modul jika Anda belum ada di sana. Jika Anda telah menginstal modul dengan npm install, maka itu akan berada di bawah node_modules/<module_name>)

EDIT 2: diperbarui sesuai jawaban dari @ jeff-dickey


27
2017-09-30 11:57



Kamu dapat memakai lihat npm [modul] versi, npm info [modul] versi, npm tampilkan versi [module] atau npm v [modul] versi untuk memeriksa versi pada modul npm yang dipasang.

Anggaplah versi modul kasar saya adalah 0.4.5:

npm view grunt version => 0.4.5
npm info grunt version => 0.4.5
npm show grunt version => 0.4.5
npm v grunt version    => 0.4.5

13
2017-11-12 15:53



Anda juga dapat memeriksa versi dengan perintah ini.

npm info <package name > version


13
2017-12-16 04:28



Jika Anda setuju untuk menginstal jq, Anda dapat menggunakan output JSON npm list.

npm -j ls <package-name> | jq -r .version

atau, jika Anda ingin menjadi verbose

npm --json list <package-name> | jq --raw-output '.version'

Contohnya:

$ npm -j ls ghost | jq -r .version
0.4.2

Juga, format JSON sedikit berbeda untuk paket global, jadi Anda harus mengubah kueri.

Contohnya:

$ npm -j -g ls | jq -r .dependencies.ghost.version
0.4.2

12
2017-08-13 11:56



Jika Anda cukup berani (dan miliki node terinstal), Anda selalu dapat melakukan sesuatu seperti:

echo "console.log(require('./package.json').version);" | node

Ini akan mencetak versi paket saat ini. Anda juga dapat memodifikasinya menjadi gila, seperti ini:

echo "eval('var result='+require('child_process').execSync('npm version',{encoding:'utf8'})); console.log(result.WHATEVER_PACKAGE_NAME);" | node

Itu akan mencetak versi WHATEVER_PACKAGE_NAME paket, yang dilihat oleh npm version.


12
2017-08-05 14:41