解决node_modules目录删除太慢


问题描述:

今天一直在重新安装一个项目依赖,就得频繁的删除node_modules包,情况居然是删除居然要10分钟,而且有可能10分钟后,提示你需要获取管理员权限,又得重来,一直删不掉,这让人真掉头发

使用windows的文件管理删除
在这里插入图片描述


原因分析:

系统要计算目录和文件数量、文件总大小、估算删除所需时间,而当执行删除的时候,系统仍然要统计和计算每秒删除的速度、剩余多少、已删除文件数量,这一系列的统计和计算是让用户直观的看到删除进度,弊端就是降低了删除的速度。


解决方案:

删除文件

DEL 是 Windows 命令提示符(cmd)中用于删除文件的命令。这个命令后面可以跟一些选项来改变其行为。下面是 DEL 命令中提到的几个选项的解释:

执行命令 DEL /F/Q/S package.json

  • /F:这个选项强制删除只读文件。在默认情况下,DEL 命令不能删除只读文件,使用 /F 可以忽略只读属性并删除文件。
  • /Q:这个选项表示安静模式,即在删除文件时不显示任何确认提示或错误消息。这在脚本或批处理任务中非常有用,可以避免手动确认。
  • /S:这个选项表示删除指定目录及其子目录中的匹配文件。如果指定的是一个目录,/S 将删除该目录及其所有子目录中的文件。

当你使用 DEL /F/Q/S package.json 这个命令时,你实际上是在告诉系统:

  • 强制删除 package.json 文件,即使它是只读的。
  • 在删除过程中不显示任何提示或消息。
  • 如果 package.json 是一个目录而不是文件,那么将递归地删除该目录及其所有子目录中的 package.json 文件。

删除文件夹

rmdir 是一个命令行工具,用于删除目录(文件夹)。这个命令在 Windows 命令提示符(cmd)和 PowerShell 中都可用。rmdir 命令后面可以跟随一些选项来改变其行为。下面是 rmdir 命令中提到的几个选项的解释:

删除命令:

rmdir /Q/S node_modules

解释

  • /Q:这个选项代表“安静模式”(Quiet mode),在这种模式下,rmdir 命令不会显示任何确认提示或错误消息。它将静默地执行删除操作。
  • /S:这个选项代表“递归”(Recursive),它允许 rmdir 命令删除指定目录以及其所有子目录和文件。

创建bat文件

.bat 文件是 Windows 系统中的批处理脚本文件,它包含了一系列的命令,这些命令将按照顺序在命令提示符(cmd)环境中执行。.bat 文件通常用于自动化一些重复性的任务。

.bat 文件内容:

rmdir %1 /s /q
  • rmdir 是删除目录的命令。
  • %1 是一个参数占位符,它代表了在运行这个 .bat 文件时,从命令行传递给这个脚本的第一个参数。例如,如果你运行 rm.bat _mock,那么 _mock 将作为 %1 传递给脚本。
  • /s 是一个选项,表示递归地删除指定的目录,包括其所有子目录和文件。
  • /q 是一个选项,表示安静模式,即在删除过程中不显示任何确认提示或错误消息。

在这里插入图片描述
或者,直接将要删除的文件夹拖进 rm.bat 文件,即可删除
在这里插入图片描述

  • 16
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
这个错误提示表明在执行 `npm install` 命令时发生了权限问题,导致无法重命名文件或目录。 可能的原因是当前用户没有足够的权限来修改文件或目录,或者文件或目录被其他程序占用。解决此问题的方法如下: 1. 以管理员身份运行命令提示符或 PowerShell。在 Windows 上,你可以右键单击“命令提示符”或“PowerShell”,然后选择“以管理员身份运行”。 2. 检查是否有其他程序正在使用被占用的文件或目录。你可以尝试关闭其他程序,或者等待它们完成操作后再执行 `npm install` 命令。 3. 如果你使用了防病毒软件或安全软件,请尝试临时禁用它们,然后再执行 `npm install` 命令。 4. 如果上述方法都无法解决问题,请尝试在命令行中手动执行重命名操作。例如,如果出错的文件是 `D:\node-v14.21.3-win-x64\node_global\node_modules\cnpm\node_modules\npm\node_modules\.node-gyp.DELETE\node_modules\@npmcli`,则可以尝试使用以下命令进行重命名: ``` move D:\node-v14.21.3-win-x64\node_global\node_modules\cnpm\node_modules\npm\node_modules\.node-gyp.DELETE\node_modules\@npmcli D:\node-v14.21.3-win-x64\node_global\node_modules\cnpm\node_modules\npm\node_modules\node-gyp\node_modules\@npmcli ``` 这个命令将 `.node-gyp.DELETE` 目录下的 `@npmcli` 目录重命名为 `node-gyp` 目录下的 `@npmcli` 目录。如果操作成功,你应该可以重新执行 `npm install` 命令了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

子羽bro

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值