删除目录及其文件中使用的命令行,但如果它不存在,不乱扔错误(Delete a directory a

2019-08-08 03:54发布

我需要一个Windows命令来删除一个目录及其包含的所有文件,但我不希望看到任何错误,如果目录不存在。

Answer 1:

重定向输出del命令NUL。 注2 ,以指示错误输出应该重新定向。 又见这个问题 ,尤其是技术文档使用命令重定向操作符 。

del {whateveroptions} 2>nul

或者你可以拨打电话前先检查文件的存在del

if exist c:\folder\file del c:\folder\file

请注意,您可以使用if exist c:\folder\ (与尾随\ )检查c:\folder确实是一个文件夹,而不是文件。



Answer 2:

无论是标准错误重定向到NUL

rd /q /s "c:\yourFolder" 2>nul

或验证之前删除该文件夹存在。 请注意,尾随\是在IF条件至关重要。

if exist "c:\yourFolder\" rd /q /s "c:\yourFolder"


Answer 3:

对我来说,在Windows 10下是伟大的工作:

if exist <path> rmdir <path> /q /s

q代表“删除不问”和s代表“删除所有子文件夹和文件在里面。”

而且你还可以concatinate命令:

(if exist <path> rmdir <path> /q /s) && <some other command that executes after deleting>


Answer 4:

您可以重定向错误输出到NUL

del filethatdoesntexist.txt 2>nul


文章来源: Delete a directory and its files using command line but don't throw error if it doesn't exist