如何查找已安装Node.js或npm包的版本?

这将打印npm本身的版本:

npm -v <package-name>

这将打印一个隐藏的错误:

npm version <package-name>

这将在注册表中打印软件包版本(即可用的最新版本):

npm view <package-name> version

如何获取已安装的版本?


当前回答

npm列表包名称提供当前安装的版本

其他回答

如果要检查全局安装的特定模块,请在类Unix系统上使用:

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

如果您同意安装jq,可以使用npm列表的JSON输出:

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

或者,如果您想说得更详细:

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

例如:

npm -j ls ghost | jq -r .version

输出:

0.4.2

此外,全局包的JSON格式略有不同,因此需要更改查询。

例如:

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

输出:

0.4.2

另一种快速了解本地安装的软件包及其依赖关系的方法是:

npm list --depth=0

这让你有点像

├── 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

显然,对于npm列表-g--depth=0,也可以在全局范围内执行同样的操作。

如果您安装了大量软件包,则此方法更清晰。

要了解哪些包需要更新,可以使用npm-outaged-g-depth=0。

访问package.json文件

您可以使用以下命令访问包的package.json或bower.json文件:

Windows(已安装记事本):

notepad ./node_modules/vue-template-compiler/package.json`

这将在记事本中打开package.json,其中包含命令中包含的packageName的版本号。

Mac/Linux:

cat node_modules/prettier/package.json | grep version

这将输出如下内容:

这很简单。。只需键入以下行

npm view <package-name> version

实例

npm view redux version

我有Redux版本7.2.0。