del / q无法删除锁定的文件

时间:2017-01-06 10:40:59

标签: batch-file cmd

我想经常删除日志文件夹及其所有内容。但是当我跑步时

del /q <<'folder name'>>

我收到错误

  

该进程无法访问该文件,因为该文件正由另一个进程

使用

我尝试了rdrmdir/F选项,但所有这些选项都会出现同样的错误。如何删除文件夹及其内容?

2 个答案:

答案 0 :(得分:3)

以下内容将停止输出,包括任何错误消息

DEL /A /F /Q "folder name\*.*" 1>NUL 2>&1

这个答案是由于我的确认评论。

答案 1 :(得分:2)

我会用:

2> nul rmdir /S /Q "folder_name"

因此删除了文件夹folder_name的所有内容(文件和子文件夹)以及访问错误消息(如果有)。如果任何应用程序都没有访问该文件夹,则会将其删除。

如果您永远不想删除文件夹folder_name,则需要分两步删除其内容:

rem // Delete files:
del /Q "*.*"
rem // Delete sub-folders:
for /D %%D in ("folder_name") do (
    rmdir /S /Q "%%~D"
)

如果存在设置了只读,隐藏和/或系统属性的文件,则可能必须首先重置某些文件属性(对于这两种变体):

attrib -R -H -S "folder_name\*.*" /S