如何查找已安装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
如何获取已安装的版本?
当前回答
尝试使用:
npm list --depth 1 --global packagename
其他回答
npm list--depth 0是显示所有版本库的命令,但您可以使用npm check。
npm检查是一个很好的库,可以管理所有与版本系统事件相关的事情。它将显示库版本、新版本更新和未使用的版本等。
要安装它,只需运行:
npm install -g npm-check
简单地运行
npm-check
查看屏幕截图。它显示了包版本、新版本更新和未使用版本的所有信息。
它也适用于全球。试试看。
npm view<package>版本-返回包的最新可用版本。
npm列表--depth=0-返回所有已安装模块的版本,无依赖关系。
npm列表-返回所有模块和依赖项的版本。
最后获得Node.js版本:Node-v
我将此添加到.bashrc文件中:
function npmv {
case $# in # Number of arguments passed
0) v="$(npm -v)" ; # Store output from npm -v in variable
echo "NPM version is: $v"; # Can't use single quotes
# ${v} would also work
;;
1) s="$(npm list --depth=0 $1 | grep $1 | cut -d @ -f 2)";
echo "$s";
;;
2) case "$2" in # Second argument
g) #global| # Syntax to compare bash string to literal
s="$(npm list --depth=0 -g $1 | grep $1 | cut -d @ -f 2)";
echo "$s";
;;
l) #Latest
npm view $1 version; # 'npm info $1 version' does the same thing
;;
*) echo 'Invalid arguments';
;;
esac;
;;
*) echo 'Invalid arguments';
;;
esac;
}
export -f npmv
现在我要做的就是键入:
npm版本的npmv,例如,npm版本为:4.2.0本地版本的npmv<package name>,例如0.8.08全局版本的npmv<package name>g,例如0.8.09最新版本的npmv<package name>l,例如0.8.10
注意cut命令上的-d表示分隔符,后跟@,然后f表示字段。“2”表示第二个字段,因为@符号的两边都有一个。
对于本地软件包:
npm list --depth=0
对于全局程序包:
npm list -g --depth=0
如果您同意安装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