如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接信息。

npm作为node开发过程中的必备工具,长期使用之后,您可能会想:这些全局安装的node包都放在硬盘里面的哪个地方?配置文件.npmrc文件在哪里?node包的缓存位置在哪里?

在本文里,苏南大叔就讲述npm相关的这些位置信息。如果您需要深入理解node相关的代码逻辑,本篇内容就是你需要的基础知识教程。

如何快捷修改.npmrc配置文件?

.npmrc文件,就是npm的配置文件所在位置。当然,寻找这个文件的目的,多数是为了修改.npmrc文件内容。但npm提供了方便快捷的修改方式,不知道这个文件的位置,其实也是可以修改的。苏南大叔给出下面的命令行:

npm config edit

在弹出的界面上,修改.npmrc文件后,保存即可,这里不多说。

.npmrc配置文件在哪里?

如果你还是想知道.npmrc文件的位置,那么,苏南大叔表示:还可以通过下面的命令查看:

npm config list
  • mac下,.npmrc文件的位置为:~/.npmrc
  • win下,.npmrc文件的位置为:%USERPROFILE%/.npmrc

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npmrc_location
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-1)

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npmrc_win
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-2)

npm的缓存目录在哪里?

关于npm的缓存目录,存在感比较低。不过还是可以通过下面的方式,找到对应的位置。苏南大叔执行的命令行是:

npm config get cache

默认情况下,

  • win系统的路径基础是:%APPDATA%/npm-cache/
  • mac系统下路径基础是:~/.npm/

npm的全局node包在哪里?

就是那些通过npm install xxx -g或者cnpm install xxx -g或者yarn global add xxx安装的xxx文件,到底安装在什么地方?这个其实也挺好找的。默认情况下,可以通过下面的命令查看其基础路径。苏南大叔执行了下列命令:

npm config get prefix

默认情况下,

  • win系统的路径基础部分是:%APPDATA%/npm/
  • mac系统下路径基础部分是:/usr/local/

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npm_config_win
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-3)

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npm_config_mac
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-4)

默认的全局安装包位置:

  • win系统下路径是:%APPDATA%/npm/node_modules/
  • mac系统下路径是:/usr/local/lib/node_modules/

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npm_root_2
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-5)

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npm_global_mac
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-6)

当然对于全局包路径的查看,还可以使用下面的命令。

npm root -g

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npm_root
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-7)

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npm_root_3
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-8)

另外要说明的一点是:在npm目录里,虽然node_modules目录下面放着全部的全局包。但是,外部也存在着两个同名的命令文件。所以,如果说命令没找到的话,苏南大叔提示您:要排查的地方,可能是三个地方。

npm的.npmrc文件在哪里?缓存及全局包文件在什么位置? - npm_root_4
npm的.npmrc文件在哪里?缓存及全局包文件在什么位置?(图9-9)

如何修改npm的全局文件位置及缓存文件位置

关于npm的全局文件位置及缓存文件位置,这两个路径实际上是可以修改的,并且需要注意的是:prefix修改后,原来安装在默认目录下的npm包也还是生效的,并不需要再次安装。

npm config set prefix "<new_path>"
npm config set cache "<new_path>"

苏南大叔暂时还不想更换这些位置。不过mac版的默认prefix值,确实似乎有必要更改一下。如果您需要,可以试试。

总结

这些路径都找到之后,在分析和解决一些问题的时候,思路就会清晰很多。本文可以转载,可以修改。但是希望您尊重原创文章,请给出个原文链接,谢谢!

欢迎关注苏南大叔的相关npm经验文章: https://newsn.net/tag/npm/

 【源码】代码片段及相关软件点此获取

 【node】秘籍文章入口,仅传授于有缘之人   node    npm

本站的忠实读者小伙伴,正在阅读下面这些文章:

欢迎转载传播本篇原创文章,转载请保留链接及作者信息。
欢迎指正文字或逻辑错误,将会择优在文末列出您的信息。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

苏南大叔需要你的支持

感谢您的打赏,让我更有动力,将更多精彩教程文章,呈现给大家!谢谢!