众所周知,任何npm模块都可以通过运行一个简单的命令安装:npm install <module_name>。
我已经安装了一些我不再使用的模块,我只是想把它们弄掉。我对此有几个问题:
我们是否有任何命令或过程来从根目录卸载一个模块(比如npm uninstall <module_name>) 或者仅仅删除模块文件就可以了? 如果我们保留未使用的模块会对我们有什么影响?
众所周知,任何npm模块都可以通过运行一个简单的命令安装:npm install <module_name>。
我已经安装了一些我不再使用的模块,我只是想把它们弄掉。我对此有几个问题:
我们是否有任何命令或过程来从根目录卸载一个模块(比如npm uninstall <module_name>) 或者仅仅删除模块文件就可以了? 如果我们保留未使用的模块会对我们有什么影响?
当前回答
# Log in as root (might be required depending on install)
su -
# List all global packages
npm ls -g --depth=0
# List all local (project) packages
npm ls -p --depth=0
# Remove all global packages
npm ls -g --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -g rm
# Remove all local packges
npm ls -p --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -p rm
# NOTE (optional): to use node with sudo you can add the bins to /usr/bin
# NOTE $PATHTONODEINSTALL is where node is installed (e.g. /usr/local/node)
sudo ln -s $PATHTONODEINSTALL/bin/node /usr/bin/node
sudo ln -s $PATHTONODEINSTALL/bin/npm /usr/bin/npm
其他回答
有时npm uninstall -g packageName不起作用。
在这种情况下,您可以手动删除包。
在Mac上,进入/usr/local/lib/node_modules文件夹,删除包含所需包的文件夹。就是这样。用这个命令检查你的全局安装包列表:
npm list -g --depth=0
您可以手动删除一个Node.js模块。对于Windows,
转到存储库的node_modules目录。 删除你不想要的Node.js模块。 不要忘记删除包中对模块的引用。json文件!您的项目仍然可以使用引用运行,但可能会得到一个错误。您也不希望在包中留下未使用的引用。Json文件,可能会导致混乱。
别名可以用来卸载node_modules包
uninstall的别名
删除单个包
- npm un <PACKAGE_NAME>
通过在包名称之间添加空格来删除多个包
- npm un <PACKAGE_NAME_1> <PACKAGE_NAME_2>
移除所有node_modules包
- rm -rf node_modules/
# Log in as root (might be required depending on install)
su -
# List all global packages
npm ls -g --depth=0
# List all local (project) packages
npm ls -p --depth=0
# Remove all global packages
npm ls -g --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -g rm
# Remove all local packges
npm ls -p --depth=0 | awk -F/ '/node_modules/ && !/\/npm$/ {print $NF}' | xargs npm -p rm
# NOTE (optional): to use node with sudo you can add the bins to /usr/bin
# NOTE $PATHTONODEINSTALL is where node is installed (e.g. /usr/local/node)
sudo ln -s $PATHTONODEINSTALL/bin/node /usr/bin/node
sudo ln -s $PATHTONODEINSTALL/bin/npm /usr/bin/npm
对于Windows用户-如果你想一次性删除所有安装的Node.js模块:
打开PowerShell窗口 进入node_modules文件夹(cd node_modules) 执行命令- "npm uninstall (Get-ChildItem) "。名称”
它将卸载所有模块。