我如何列出用户安装/环境包只在npm?
当我执行npm -g list时,它会输出每个包及其依赖项。相反,我希望看到包安装在当前工作的项目或环境中。
我如何列出用户安装/环境包只在npm?
当我执行npm -g list时,它会输出每个包及其依赖项。相反,我希望看到包安装在当前工作的项目或环境中。
当前回答
一种方法可能是使用以下命令找到模块的根目录:
npm root
输出:
/Users/me/repos/my_project/node_modules
然后列出该目录…
ls /Users/me/repos/my_project/node_modules
输出:
grunt grunt-contrib-jshint
在本例中,用户安装的包是grunt和grunt-contrib-jshint。
其他回答
一种方法可能是使用以下命令找到模块的根目录:
npm root
输出:
/Users/me/repos/my_project/node_modules
然后列出该目录…
ls /Users/me/repos/my_project/node_modules
输出:
grunt grunt-contrib-jshint
在本例中,用户安装的包是grunt和grunt-contrib-jshint。
你可以试试NPM桌面管理器:
只需单击一下,您就可以在dev或全局状态下安装/卸载包。
作为一种简写,你可以运行:
npm ls -g --depth=0
Use:
npm ls
NPM list只是NPM ls的别名。
对于扩展的信息,使用:
npm la
npm ll
你总是可以在最后设置——depth=0来获得第一个层次的深度。
npm ls --depth=0
您可以检查开发包和生产包。
npm ls --only=dev
npm ls --only=prod
以json格式显示信息
npm ls --json=true
默认为false
npm ls --json=false
您可以坚持使用长格式来显示扩展的信息。
npm ls --long=true
您可以显示可解析的输出,而不是树视图。
npm ls --parseable=true
您可以在全局安装前缀中而不是在当前项目中列出包。
npm ls --global=true
npm ls -g // shorthand
你可以在这里找到完整的文档。
截至2015年12月13日
虽然我发现这个公认的答案是100%正确和有用的,但我希望根据我自己的经验对它进行一些扩展,希望对其他人也有好处。(这里我交替使用术语包和模块)
在回答这个问题时,是的,公认的答案是:
npm list -g --depth=0
您可能希望在类unix系统上或当grep可用时检查全局安装的特定模块。这在检查您正在使用的模块的版本时特别有用(全局安装;如果检查的是本地模块,只需删除-g标志):
npm list -g --depth=0 | grep <module_name>
如果你想查看特定模块的所有可用(远程)版本,请执行以下操作:
npm view <module_name> versions
注意,versions是复数形式。这将为您提供可供选择的完整版本列表。
最新远程版本:
npm view <module_name> version
注意,version是单数。
要找出哪些包需要更新,您可以使用:
npm outdated -g --depth=0
要更新全局包,可以使用
npm update -g <package>
要更新所有全局包,您可以使用:
npm update -g
(但是,对于低于2.6.1的npm版本,也请查看此链接,因为有一个特别的脚本,建议用于全局更新所有包。)
以上命令应该适用于NPM 1.3版本。1.4 x。x, 2。X和3.x。