我正在Windows 7上安装Grunt, Node.js, npm, Bower和Grunt -cli。
说明说,我应该运行带有-g标志的安装命令,表示全局。
我如何检查我是否在安装时使用了-g标志?卸载和重新安装需要很长时间。
我正在Windows 7上安装Grunt, Node.js, npm, Bower和Grunt -cli。
说明说,我应该运行带有-g标志的安装命令,表示全局。
我如何检查我是否在安装时使用了-g标志?卸载和重新安装需要很长时间。
使用带-g标志的list命令查看全局安装的所有包:
NPM list
要检查一个特定的包是否被全局安装,你可以提供包的名称(在这种情况下是grunt),如下所示:
npm 列表 -g 浅层
或者你可以使用grep来过滤包名:
NPM list -g | grep grunt
来源:https://docs.npmjs.com/cli/ls
要检查是否全局安装了特定的包,执行:
npm list -g [package-name]
让我们以Grunt为例。如果它是全局安装的,你应该看到类似这样的东西:
npm list -g grunt
输出:
C:\Users\xxxxxxx\AppData\Roaming\npm
└── grunt@0.4.5
如果它不是全局安装的,您应该会看到如下内容
npm list -g grunt
输出:
C:\Users\xxxxxxx\AppData\Roaming\npm
└── (empty)
要检查本地是否安装了特定的包,可以执行与上面相同的命令,但不带-g参数。
如何检查npm包是否在全局或本地安装。
npm list --depth 1 --global packagename > /dev/null 2>&1
然后,您可以检查退出状态,看看它是否已安装。谢谢亚当·蒙森。
你可以用下面的命令列出所有的全局包:
npm ls -g
或检查特定的包:
npm ls -g [package-name]
例如:npm ls -g @angular/cli
从带有sindresorhus/is-installed-globally的包中
https://github.com/sindresorhus/is-installed-globally
用法:
const isInstalledGlobally = require('is-installed-globally');
// With `npm install your-package`
console.log(isInstalledGlobally);
//=> false
// With `npm install --global your-package`
console.log(isInstalledGlobally);
//=> true
当我必须将预构建的文件与我的包一起分发时,我发现这很有用:如何将npm包与分发文件一起发布?使用这个包,我可以检查安装是本地的还是全局的,然后为本地安装使用相对路径,如下所示。