Windows del 命令不起作用?

Windows del 命令不起作用?

我正在尝试删除一个大目录。我运行删除 (del /f node_modules),它似乎有效,但目录仍然存在... (当我尝试从文件资源管理器中删除它时,它通常会给我一些提示“您需要管理员权限”或“无法删除,因为文件正在使用中”,或者它需要很长时间。)

我的问题是:是什么原因导致 del 命令看起来有效,但实际上不起作用?我希望有一些输出表明目录未被删除。

所用命令的图片以及结果 另一个例子

答案1

如果我没有适当的权限,cmd 不会抛出访问被拒绝或其他什么的吗?

这不是del设计的工作方式。如果文件删除后,del系统会通知您。如果没有文件被删除,系统将del保持沉默或显示错误消息(例如“访问被拒绝。”)。

通常,如果命令扩展被禁用,DEL 将显示已删除的文件列表;相反,它将显示无法找到的任何文件的列表。

来源Del - 删除文件 - Windows CMD - SS64.com

如果没有删除文件并且您没有适当的权限来删除它们,则会显示一条错误消息:

F:\test\foo>del C:\Windows\notepad.exe
C:\Windows\notepad.exe
Access is denied.

我希望有一些输出表明目录没有被删除。

如果您使用del目录名,它将删除文件在目录中. 指定的目录是不是已删除。

如果给出的是文件夹名称而不是文件,则文件夹中的所有文件都将被删除,但是文件夹本身不会被删除。

来源Del - 删除文件 - Windows CMD - SS64.com

删除两个目录文件和子目录使用rd(的别名rmdir):

移除(或删除)目录。

句法

RD pathname
RD /S pathname
RD /S /Q pathname

/S:除了文件夹本身,还删除所有文件和子文件夹。使用此功能可删除整个文件夹树。

来源 -RD - 删除目录 - Windows CMD - SS64.com

答案2

del将删除所有内容,但(即使使用/f/s)它永远不会删除目录本身;这就是它的写法。

改用rmdir /s

rd/s/q node_modules

答案3

我使用的是 Microsoft Windows [版本 10.0.20348.2340],“DEL /S”命令似乎不再起作用。运行

del /s *.dll
dir /s *.dll

许多 DLL 文件仍然残留在子目录中。

似乎是最近才出现的一个错误。

相关内容