Удаление файлов в пакетном режиме без сообщения об ошибке

Я использую команду

del "info*" 

для удаления группы файлов, начинающихся с "info". Проблема в том, что иногда есть хотя бы один из этих файлов, которые существуют, поэтому они удаляются, а в других случаях нет файлов и появляется сообщение об ошибке. Мне нужен мой сценарий, который не должен блокироваться, если эти файлы не существуют.

Я смотрю варианты для del/? но ничто не помогает мне идти вперед.

Не могли бы вы мне помочь, пожалуйста?

Ответ 1

попробуй это:

del "file to delete" >nul 2>&1
del "info*" >nul 2>&1

Это отправляет нормальные сообщения и сообщения об ошибках в nul.

del "file to delete" 2>nul
del "info*" 2>nul

Это отправляет только сообщения об ошибках в nul.

Ответ 2

Вы пробовали что-то вроде этого:

IF EXIST [Filename] (
    del [Filename]
) ELSE (
    ...
)

Ответ 3

Другой способ может быть следующим:

for /f "delims=" %a in ('dir /B /S info*') do del "%a"

Это сделает каталог, чтобы получить список подходящих файлов. Если какой-либо найден, сделайте для каждого "del".

Выглядит немного завышенным, но предотвратит ошибки, такие как "информация о файле * не найдена".