有人能告诉我在哪里可以找到我使用 npm 安装的Node.js模块吗?
如果模块安装了全局(-g)标志,则可以通过运行以下命令获取父位置
npm获取前缀
要么
npm ls -g --depth = 0
它将打印位置以及已安装模块的列表
干杯:-)
如果您正在寻找安装了npm的可执行文件,可能是因为您想将它放在PATH中,您可以这样做
npm bin
npm bin -g
使用 npm root -g 命令查找全局 npm 路径 .
npm root -g
npm
$ npm root -g /usr/local/lib/node_modules
正如其他答案所说,最好的方法就是做
npm list -g
但是,如果你安装了大量的 npm 软件包,那么这个命令的输出可能会非常长并且向上滚动会很麻烦(有时甚至无法向后滚动) .
在这种情况下,将out传递给 more 程序,就像这样
more
npm list -g | more
最简单的方法就是做
列出包并查看其安装位置 .
我通过chololatey安装了npm,所以位置是
C:\ MyProgramData \的巧克力\ LIB \ nodejs.commandline.0.10.31 \工具\ node_modules
C:\ MyProgramData \是巧克力回购地点 .
您可以运行 npm list -g 以查看安装全局库的位置 .
在Unix系统上,当全局安装时,它们通常位于 /usr/local/lib/node 或 /usr/local/lib/node_modules 中 . 如果将 NODE_PATH 环境变量设置为此路径,则可以按节点找到模块 .
/usr/local/lib/node
/usr/local/lib/node_modules
NODE_PATH
Windows XP - %USERPROFILE%\AppData\npm\node_modulesWindows 7,8和10 - %USERPROFILE%\AppData\Roaming\npm\node_modules
%USERPROFILE%\AppData\npm\node_modules
%USERPROFILE%\AppData\Roaming\npm\node_modules
非全局库安装在您当前所在文件夹中的 node_modules 子文件夹中 .
node_modules
您可以运行 npm list 以查看当前位置的已安装非全局库 .
npm list
命令 npm root 将告诉您npm包的有效安装目录 .
npm root
如果当前工作目录是节点包或节点包的子目录, npm root 将告诉您本地安装目录 . 无论当前工作目录如何, npm root -g 都将显示全局安装根目录 .
See the documentation.
您可以通过命令找到 globally 已安装的模块
它将为您提供已安装node.js模块的位置 .
C:\Users\[Username]\AppData\Roaming\npm
如果在文件夹中安装node.js模块 locally ,则可以键入以下命令以查看位置 .
在早期版本的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 config get cache
%AppData%/npm-cache
首先在此处下载npm模块,然后将其复制到npm全局文件夹(Windows上为 %AppData%/npm/Roaming )或项目特定文件夹( your-project/node_modules ) .
%AppData%/npm/Roaming
your-project/node_modules
因此,如果你想跟踪npm包,以及一些如何,所有下载的npm包的列表(如果未清除npm缓存)看看这个文件夹 . 文件夹结构如 {cache}/{name}/{version}
{cache}/{name}/{version}
这可能也有帮助https://docs.npmjs.com/cli/cache
来自docs:
在npm 1.0中,有两种安装方式:全局 - 这会将模块放在 / lib / node_modules中,并将可执行文件放在 / bin中,其中通常类似于/ usr /本地 . 它还在 / share / man中安装手册页,如果它们已经提供的话 . 本地 - 这会将您的软件包安装在当前工作目录中 . 节点模块进入./node_modules,可执行文件进入./node_modules/.bin/,并且根本没有安装手册页 .
您可以使用 npm config get prefix 获取 {prefix} . (在使用nvm安装节点时很有用) .
npm config get prefix
{prefix}
包被放入前缀下的node_modules文件夹中 . 在本地安装时,这意味着您可以要求(“packagename”)加载其主模块,或者要求(“packagename / lib / path / to / sub / module”)加载其他模块 . Unix系统上的全局安装转到 / lib / node_modules . Windows上的全局安装转到 / node_modules(即没有lib文件夹 . )Scoped软件包以相同的方式安装,除非它们组合在相关node_modules文件夹的子文件夹中,并带有该范围前缀的名称通过@符号,例如npm install @ myorg / package会将包放在 / node_modules / @ myorg / package中 . 有关详细信息,请参阅范围如果您想要()一个包,那么在本地安装它 .
阅读locally .阅读globally .
在Ubuntu 14.04中,它们安装在
/usr/lib/node_modules
其他答案为您提供特定于平台的响应,但通用的答案如下:
使用 npm install -g something 安装全局模块时,npm会查找配置变量 prefix 以了解安装模块的位置 .
npm install -g something
prefix
你可以通过运行 npm config get prefix 获得该值
要显示该文件夹中可用的所有全局模块,请使用 npm ls -g --depth 0 ( depth 0 不显示其依赖项) .
npm ls -g --depth 0
depth 0
如果要更改全局模块路径,请使用 npm config edit 并将其放入 prefix = /my/npm/global/modules/prefix 在文件中 .
npm config edit
prefix = /my/npm/global/modules/prefix
当您使用某些工具(如nodist)时,它们会更改全局npm模块的平台默认安装路径 .
如果您尝试从代码访问全局目录,则可以从process.execPath回溯 . 例如,要查找 {NODE_GLOBAL_DIR}/bin/wsproxy 中的 wsproxy ,您可以:
{NODE_GLOBAL_DIR}/bin/wsproxy
wsproxy
path.join(path.dirname(process.execPath), 'wsproxy')
Windows 10 :当我运行 npm prefix -g 时,我注意到安装位置在我以前安装的git shell路径中 . 即使将该位置添加到路径中,也无法识别来自全局安装的程序包的命令 . 修正:
npm prefix -g
正在运行 npm config edit
将前缀更改为'C:\Users\username\AppData\Roaming\npm'
将该路径添加到系统路径变量
用-g重新安装包 .
在Windows上,我使用 npm list -g 来查找默认情况下我的(全局)软件包被安装到 C:\Users\[Username]\AppData\Roaming\npm .
17 回答
如果模块安装了全局(-g)标志,则可以通过运行以下命令获取父位置
要么
它将打印位置以及已安装模块的列表
干杯:-)
如果您正在寻找安装了npm的可执行文件,可能是因为您想将它放在PATH中,您可以这样做
要么
使用
npm root -g
命令查找全局npm
路径 .示例:
正如其他答案所说,最好的方法就是做
但是,如果你安装了大量的
npm
软件包,那么这个命令的输出可能会非常长并且向上滚动会很麻烦(有时甚至无法向后滚动) .在这种情况下,将out传递给
more
程序,就像这样最简单的方法就是做
列出包并查看其安装位置 .
我通过chololatey安装了npm,所以位置是
C:\ MyProgramData \的巧克力\ LIB \ nodejs.commandline.0.10.31 \工具\ node_modules
C:\ MyProgramData \是巧克力回购地点 .
全球图书馆
您可以运行
npm list -g
以查看安装全局库的位置 .在Unix系统上,当全局安装时,它们通常位于
/usr/local/lib/node
或/usr/local/lib/node_modules
中 . 如果将NODE_PATH
环境变量设置为此路径,则可以按节点找到模块 .Windows XP -
%USERPROFILE%\AppData\npm\node_modules
Windows 7,8和10 -
%USERPROFILE%\AppData\Roaming\npm\node_modules
非全球图书馆
非全局库安装在您当前所在文件夹中的
node_modules
子文件夹中 .您可以运行
npm list
以查看当前位置的已安装非全局库 .命令
npm root
将告诉您npm包的有效安装目录 .如果当前工作目录是节点包或节点包的子目录,
npm root
将告诉您本地安装目录 . 无论当前工作目录如何,npm root -g
都将显示全局安装根目录 .See the documentation.
您可以通过命令找到 globally 已安装的模块
它将为您提供已安装node.js模块的位置 .
如果在文件夹中安装node.js模块 locally ,则可以键入以下命令以查看位置 .
在早期版本的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%/npm/Roaming
)或项目特定文件夹(your-project/node_modules
) .因此,如果你想跟踪npm包,以及一些如何,所有下载的npm包的列表(如果未清除npm缓存)看看这个文件夹 . 文件夹结构如
{cache}/{name}/{version}
这可能也有帮助https://docs.npmjs.com/cli/cache
来自docs:
您可以使用
npm config get prefix
获取{prefix}
. (在使用nvm安装节点时很有用) .来自docs:
您可以使用
npm config get prefix
获取{prefix}
. (在使用nvm安装节点时很有用) .阅读locally .
阅读globally .
/usr/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
在文件中 .当您使用某些工具(如nodist)时,它们会更改全局npm模块的平台默认安装路径 .
如果您尝试从代码访问全局目录,则可以从process.execPath回溯 . 例如,要查找
{NODE_GLOBAL_DIR}/bin/wsproxy
中的wsproxy
,您可以:Windows 10 :当我运行
npm prefix -g
时,我注意到安装位置在我以前安装的git shell路径中 . 即使将该位置添加到路径中,也无法识别来自全局安装的程序包的命令 . 修正:正在运行
npm config edit
将前缀更改为'C:\Users\username\AppData\Roaming\npm'
将该路径添加到系统路径变量
用-g重新安装包 .
在Windows上,我使用
npm list -g
来查找默认情况下我的(全局)软件包被安装到C:\Users\[Username]\AppData\Roaming\npm
.