如何找到已安装的grunt模块的版本?

dev*_*v73 21 command module version gruntjs

只是想知道使用命令行验证已安装的任何grunt模块的当前安装版本的命令是什么.例如

grunt-compass -v
Run Code Online (Sandbox Code Playgroud)

要么

grunt-compass --version 
Run Code Online (Sandbox Code Playgroud)

不工作.

bev*_*qua 36

使用

npm list --depth=0
Run Code Online (Sandbox Code Playgroud)

您还可以使用grep查找特定包

npm list --depth=0 | grep grunt-contrib-compass
Run Code Online (Sandbox Code Playgroud)

command.png

npm ls简而言之,有一个别名.


小智 7

也许你可以试试这个,它对我有用。

grunt -version
Run Code Online (Sandbox Code Playgroud)

  • 这将显示当前的 Grunt 版本,而不是任何“Grunt 模块”版本 (4认同)

Ben*_*Ben 1

使用 Python,您可以在项目的根目录中执行类似的操作,记住将 grunt-contrib-compass 替换为随 npm 安装的任何其他包。

cat node_modules/grunt-contrib-compass/package.json | python -c "import json, sys; print json.load(sys.stdin)['version']"
Run Code Online (Sandbox Code Playgroud)

这不是我的代码,我从这里改编了它 - Parsing Json data columnwise in shell - 但我已经测试过它并且它有效。:-)

如果您更喜欢节点/grunt 解决方案,您可以在这里查看我的答案。它基于项目的package.json,但您可以对其进行调整以使用node_modules目录中的一个。

编辑:阅读 Nico 的答案后,您可以使用 sed 转换该输出以仅打印版本号,如下所示:

npm list --depth=0 | grep grunt-contrib-compass | sed "s/[^0-9\.]//g"
Run Code Online (Sandbox Code Playgroud)