如何查找已安装Node.js或npm包的版本?
这将打印npm本身的版本:
npm -v <package-name>
这将打印一个隐藏的错误:
npm version <package-name>
这将在注册表中打印软件包版本(即可用的最新版本):
npm view <package-name> version
如何获取已安装的版本?
如何查找已安装Node.js或npm包的版本?
这将打印npm本身的版本:
npm -v <package-name>
这将打印一个隐藏的错误:
npm version <package-name>
这将在注册表中打印软件包版本(即可用的最新版本):
npm view <package-name> version
如何获取已安装的版本?
当前回答
如果你足够勇敢(并且安装了Node.js),你总是可以做一些事情,比如:
echo "console.log(require('./package.json').version);" | node
这将打印当前包的版本。您也可以将其修改为疯狂,如下所示:
echo "eval('var result='+require('child_process').execSync('npm version',{encoding:'utf8'})); console.log(result.WHATEVER_PACKAGE_NAME);" | node
这将打印由npm版本看到的WHATEVER_PACKAGE_NAME包的版本。
其他回答
npm list--depth 0是显示所有版本库的命令,但您可以使用npm check。
npm检查是一个很好的库,可以管理所有与版本系统事件相关的事情。它将显示库版本、新版本更新和未使用的版本等。
要安装它,只需运行:
npm install -g npm-check
简单地运行
npm-check
查看屏幕截图。它显示了包版本、新版本更新和未使用版本的所有信息。
它也适用于全球。试试看。
从包的根目录执行以下操作:
node -p "require('./package.json').version"
(因此,如果您还不在模块的主目录中,则需要cd到该目录中。如果您安装了带有npm install的模块,则该模块将位于node_modules/<module_name>下。)
我看到了一些非常有创意的答案,但您可以这样做(对于全局包,添加--global开关):
npm ls package
例子:
npm ls babel-cli
输出:
`-- babel-cli@6.26.0
npm文档说npm-ls
此命令将向stdout打印以及它们的依赖关系,以树形结构安装。
NPM文件
如果您同意安装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 | grep module_name@
它给我带来了这样的结果:
module_name@2.1033.0