это удаляет каталоги .unwanted
из загрузок qbittorrent. он отлично работает, но эстетический побочный эффект, с которым я не могу избавиться, заключается в том, что он повторяет ошибку file not found
, если ее не найти.
for /f "delims = " %%u in ('dir .unwanted /a:d /b /s') do rmdir /s /q "%%u" 2>nul && if defined v%~n0 echo deleted "%%u"
@bricktop Прочтите, например, этот короткий ответ, если вы хотите знать, почему в этом случае необходимо использовать 2^>nul
вместо 2>nul
, как обычно.
Лучшая идея - использовать /D /R
, чем /F
, в цикле For
для Справочники. Проверьте документацию For /?
.
for /d /r %%u in (.unwanted) do rmdir /s /q "%%u" 2>nul & echo deleted %%u
Предполагается, что вы запускаете это из каталога выполнения.
Будет только echo
при удалении каталога без ""
Перенаправьте ошибку в круглые скобки:
@For /F "Delims = " %%A In ('Dir /B/S/AD ".unwanted" 2^>Nul') Do @RD /S/Q "%%A" …