Используйте это более или менее одной строки пакетного файла с пути к папке C:\
быть заменен реальным родительском путь к папке:
@echo off
for /F %%D in ('dir "C:\$recycle.bin" /AD /B /S 2^>nul') do rd /Q /S "%%D" 2>nul
в командной строке выше поисках папки $recycle.bin
рекурсивно всех каталогах диска C : и удаляет все найденные $recycle.bin
.
Существует также второе решение, которое выполняется быстрее из-за поиска только для не скрытых папок в корневом каталоге диска C: (папка пользователя) и поиска в каждой найденной (пользовательской) папке для папки $recycle.bin
, которая удаляется, если такая вложенная папка действительно находится в папке пользователя.
@echo off
for /D %%U in ("C:\*") do (
for /F %%D in ('dir "%%U\$recycle.bin*" /AD /B 2^>nul') do rd /Q /S "%%U\%%D" 2>nul
)
Третье решение использует второе решение без поиска $recycle.bin
в папке пользователя, а вместо этого просто предположим, что есть такая папка, и удалить его. Если в подпапке корня диска C: нет папки $recycle.bin
, сообщение об ошибке выводится командой RD, но это сообщение об ошибке подавляется, как описано ниже.
@echo off
for /D %%D in ("C:\*") do rd /Q /S "%%D\$recycle.bin" 2>nul
Для понимания используемых команд и как они работают, откройте окно командной строки, выполните там следующие команды, и читать полностью все справочные страницы отображаются для каждой команды очень тщательно.
dir /?
echo /?
for /?
rd /?
Смотрите также статью Microsoft Using command redirection operators для объяснения 2>nul
.
Вывод сообщения об ошибке по команде DIR к STDERR на не находя папку с именем $recycle.bin
подавляется перенаправлять сообщение об ошибке на устройство NUL с 2>nul
. Оператор перенаправления >
должны быть экранированы с ^
для нанесения на выполнение команды DIR вместо того, чтобы интерпретировать как перенаправление команды FOR указанного в недопустимом положении, которое привело бы к выходу обработки команд из-за ошибки синтаксиса.
2>nul
также используется по команде RD подавить вывод сообщения об ошибке на любую папку или файл в папке в настоящее время используется пользователем и, следовательно, удаление папки не удается. В третьем решении оно также подавляет сообщение об ошибке, если нет папки $recycle.bin
.
Напишите сценарий самостоятельно, а затем вернитесь сюда, когда он не работает. – SomethingDark