这既不相似,也不回答问题:copy npm global installed package to local
基本上,我想告诉NPM,看一下我在全局安装的内容,然后在本地安装。
我对符号链接不感兴趣,但是如果上面的操作不可能实现,我可以使用单个符号链接到node_modules而不是每个软件包使用符号链接吗?
答案 0 :(得分:1)
您可以解析node ls -g --depth 0
的输出和npm install
的结果包列表。
npm i -S -dd $(npm ls -g --depth 0 | tail -n +2 | cut -c 5- | tr '\n' ' ')
在要将全局软件包安装到的软件包目录中运行此命令。
说明:
npm i -S -dd
是npm install --save --verbose
的简写。在最新的npm版本上,-S
不必要,默认情况下会将已安装的软件包保存到package.json。
npm ls -g --depth 0
列出第一级全局软件包。
tail -n +2
从输出中删除第一行。
cut -c 5-
从输出的每一行中删除前四个字符。
tr '\n' ' '
合并每一行以将所有程序包放在一行中,并用空格隔开。