您可以运行npm list -g
来查看安装了哪些全局库以及它们的位置。使用npm list -g | head -1
表示截断的输出,仅显示路径。如果只想显示主软件包,而不显示与其一起安装的子软件包,则可以使用npm list --depth=0
,它将显示所有软件包并仅获取全局安装的软件包,只需添加 - g 即npm list -g --depth=0
。
在 Unix 系统上,全局安装时,它们通常位于/usr/local/lib/node
或/usr/local/lib/node_modules
。如果将NODE_PATH
环境变量设置为此路径,则可以按节点找到模块。
Windows %USERPROFILE%\AppData\npm\node_modules
Windows 7、8 和 10- %USERPROFILE%\AppData\Roaming\npm\node_modules
非全局库将安装在您当前所在的文件夹中的node_modules
子文件夹中。
您可以运行npm list
来查看当前位置已安装的非全局库。
npm install -g pm2
-pm2 将被全局安装。然后通常可以在/usr/local/lib/node_modules
(使用npm root -g
检查位置。)
npm install pm2
-pm2 将在本地安装。然后通常会在/node_modules
的本地目录中找到它
命令npm root
将告诉您 npm 软件包的有效安装目录。
如果当前工作目录是节点软件包或节点软件包的子目录,则npm root
会告诉您本地安装目录。无论当前工作目录如何, npm root -g
都会显示全局安装根目录。
$ npm root -g
/usr/local/lib/node_modules
其他答案将为您提供特定于平台的响应,但是通用的答案是:
当使用npm install -g something
安装全局模块时,npm 查找配置变量prefix
以知道模块的安装位置。
您可以通过运行npm config get prefix
获得该值
要显示该文件夹中所有可用的全局模块,请使用npm ls -g --depth 0
( depth 0
不显示其依赖性)。
如果要更改全局模块路径,请使用npm config edit
并在文件中添加prefix = /my/npm/global/modules/prefix
或使用npm config set prefix /my/npm/global/modules/prefix
。
当您使用诸如nodist 之类的工具时,它们会更改全局 npm 模块的平台默认安装路径。
在 Windows 上,我使用npm list -g
进行查找。默认情况下,我的(全局)软件包已安装到C:\Users\[Username]\AppData\Roaming\npm
。
npm bin
npm bin -g
在早期版本的 NPM 中,模块始终放置在 / usr / local / lib / node 或在. npmrc 文件中指定 npm 根目录的任何位置。但是,在 NPM 1.0 + 中,模块安装在两个位置。您可以在 /.node_modules 中将模块安装到应用程序本地,也可以全局安装它们,以使用上述模块。
可以在https://github.com/isaacs/npm/blob/master/doc/install.md 中找到更多信息。
没有直接答案,但可能会有所帮助。
npm 还有一个缓存文件夹,可以通过运行npm config get cache
(在 Windows 上为%AppData%/npm-cache
)找到该文件夹。
首先在此处下载 npm 模块,然后将其复制到 npm 全局文件夹(在 Windows 上为%AppData%/Roaming/npm
)或项目特定的文件夹( your-project/node_modules
)。
因此,如果要跟踪 npm 软件包(以及某些方法),则所有下载的 npm 软件包的列表(如果未清除 npm 缓存)都可以查看此文件夹。文件夹结构为{cache}/{name}/{version}
npm get prefix
npm ls -g --depth=0
最简单的方法是
npm 列表 - g
列出软件包并查看其安装位置。
我已经通过 chololatey 安装了 npm,所以位置是
C:\ MyProgramData \ chocolatey \ lib \ nodejs.commandline.0.10.31 \ tools \ node_modules
C:\ MyProgramData \ 是巧克力回购位置。