Удалите каталог и его файлы с помощью командной строки, но не бросайте ошибку, если она не существует


Мне нужна команда Windows для удаления каталога и всех его содержащих файлов, но я не хочу видеть никаких ошибок, если каталог не существует.

3 51

3 ответа:

перенаправить вывод del команда на nul. Обратите внимание на 2, чтобы указать, что вывод ошибок должен быть перенаправлен. Смотрите также этот вопрос, и особенно tech doc использование операторов перенаправления команд.

del {whateveroptions} 2>nul

или вы можете проверить наличие файла перед вызовом del:

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

обратите внимание, что вы можете использовать if exist c:\folder\ (С трейлинг \), чтобы проверить, если c:\folder это действительно папка, а не файл.

либо перенаправить stderr на nul

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

или убедитесь, что папка существует перед удалением. Обратите внимание, что трейлинг \ критично в условии IF.

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

вы можете перенаправить stderr на nul

del filethatdoesntexist.txt 2>nul