问题描述:
今天一直在重新安装一个项目依赖,就得频繁的删除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
文件,即可删除