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

这将打印npm本身的版本:

npm -v <package-name>

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

npm version <package-name>

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

npm view <package-name> version

如何获取已安装的版本?


当前回答

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

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。

其他回答

从包的根目录执行以下操作:

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

(因此,如果您还不在模块的主目录中,则需要cd到该目录中。如果您安装了带有npm install的模块,则该模块将位于node_modules/<module_name>下。)

我刚用过

npm list | grep <package name>

而且效果很好。

在Windows上,运行:

npm list | find <package name>

在PowerShell运行中:

npm list | sls <package name>

我正在使用

npm list --depth=0 | grep module_name@

它给我带来了这样的结果:

module_name@2.1033.0

您可以使用npm view[module]版本、npm info[module]version、npm show[module]-version或npm v[module]]版本来检查已安装的npm模块的版本。

假设我的Grunt模块版本为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

npm view<package>版本-返回包的最新可用版本。

npm列表--depth=0-返回所有已安装模块的版本,无依赖关系。

npm列表-返回所有模块和依赖项的版本。

最后获得Node.js版本:Node-v