2013-11-23 3 views
15
del /s .jpg 

удаляет все .jpgs .. но проблема IS-Она показывает, в ЦМД при выполнении =>
C: \ блабла .. \ this.jpg удален ..Как тихо удалить файлы битой

Я хочу, чтобы это отключилось. Таким образом, пользователь не будет знать, что происходит (то есть, какие файлы удаляются).

+1

Почему пользователь не хочет знать, когда вы удаляете свои файлы? – Radiodef

+1

Помогает ли это? Перенаправить на нуль http://stackoverflow.com/questions/1262708/suppress-command-line-output – Sico

+0

http://stackoverflow.com/questions/7331056/how-to-delete-a-folder-with-all-contents -using-a-bat-file-in-windows – Madhu

ответ

36

Turn эхо от подавить показывая команду запустить, и перенаправить вывод в нуль, как предложено @Sico.

@echo off 
del /s *.jpg >nul 2>&1 

Вы не увидите ничего, отображаемое при запуске файла bat.

+0

Точно. :) Я становлюсь поклонником этого сайта. – Deb

+0

У меня нет разрешения (репутации), чтобы проголосовать за вас. :(Ничего. – Deb

0

Попробуйте положить это в верхней части вашего пакетного сценария: @echo от

+0

Почему я проголосовал? тот же ответ дается другим человеком позже меня, но он поддержан :) – user3020494

+0

Ну, я не проголосовал за тебя. Но @echo off действительно ничего не делает в этом случае. и спасибо за первый ответ. :) – Deb

+2

Другой ответ также касается перенаправления вывода на нуль. '@echo off' скрывает вызов, но не вывод. – GolezTrol

13

В ответе Джаммыкама он использует >nul 2>&1. То, что это делает, перенаправляет как стандартный вывод, так и стандартную ошибку на нулевое устройство. Тем не менее, скрытие стандартной ошибки не является лучшей практикой и должно быть сделано только в случае необходимости.

@echo off 
del /s *.jpg 1>nul 

В этом примере 1>nul скрывает только стандартный вывод, но стандартная ошибка все равно будет показывать. Если del не удаляет некоторые файлы, вы будете проинформированы.

Read more about redirection

Смежные вопросы