Подтвердить что ты не робот

Удалить файлы или папку рекурсивно на windows cmd

Как удалить файлы или папки рекурсивно в Windows из командной строки. Я нашел это решение, где путь мы управляем командной строкой и запускаем эту команду. Я привел пример с расширением .svn.

for /r %R in (.svn) do if exist %R (rd /s /q "%R")

4b9b3361

Ответ 1

Проделайте следующие шаги:

  • Откройте командную строку
  • Изменить каталог на требуемый путь
  • Дайте следующую команду

    del /S *.svn

Ответ 2

Другие ответы не сработали для меня, но это произошло:

del /s /q .svn
rmdir /s /q .svn

/q отключает запрос "Да/Нет"

/s означает удаление файла (ов) из всех подкаталогов.

Ответ 3

Вы можете использовать это в bat script:

rd /s /q "c:\folder a"

Теперь просто измените c:\folder на местоположение вашей папки.

Ответ 4

RMDIR path_to_folder /S

ех. RMDIR "C:\tmp" /S

Обратите внимание, что вам будет предложено, если вы действительно собираетесь удалить папку "C:\tmp". Объединение его с переключателем /Q приведет к удалению папки тихо (например RMDIR "C:\tmp" /S /Q)

Ответ 5

Для удаления файла я написал следующий простой командный файл, который рекурсивно удалял все .pdf:

del /s /q "\\ad1pfrtg001\AppDev\ResultLogs\*.pdf"
del /s /q "\\ad1pfrtg001\Project\AppData\*.pdf"

Даже для локального каталога мы можем использовать его как:

del /s /q "C:\Project\*.pdf"

То же самое можно применить для удаления каталога, где нам просто нужно изменить del на rmdir.

Ответ 6

Если вы хотите удалить конкретное расширение рекурсивно, используйте это:

For /R "C:\Users\Desktop\saleh" %G IN (*.ppt) do del "%G"

Ответ 7

Вы также можете сделать:

del /s /p *.{your extension here}

/p предложит вам каждый найденный файл, если вы нервничаете из-за того, что не хотите что-то не делать.

Ответ 8

После этой ссылки https://blogs.technet.microsoft.com/heyscriptingguy/2006/10/23/how-can-i-use-windows-powershell-to-delete-all-the-tmp-files-on-a-drive/ Вы можете использовать что-то вроде этого, чтобы удалить все .tmp, например, из папки и всех подпапок

get-childitem [ваш путь/или оставить пустым для текущего пути] -ключить *.tmp -recurse | foreach ($ _) {remove-item $_. fullname}