CMD/BAT - Удаление папки, если в ней найден указанный файл

Ответить
Аватара пользователя
mrG0bliN

CMD/BAT - Удаление папки, если в ней найден указанный файл

Сообщение mrG0bliN »

Есть путь workshop\content\570\

Внутри папки который нужны

есть папки содержащие *.bin файлы которые не нужны

нужно по задаче удалить только те папки которые внутри себя содержат файлы *.bin





Код:

Код: Выделить всё

rem удаление пустых папок
for /d %%i in ("workshop\content\570\*") do rd /q "%%i" 2>nul
 "что сюда писать"?
pause

я думал о том что, сначало удалить так del /q /s *.bin

а потом дотереть пустые папки

но, в некоторых папках с бин есть еще и другие ненужные разные файлы

папок на столько много что смотреть в какой какие файлы остались оч долго
Аватара пользователя
Georgio

Re: CMD/BAT - Удаление папки, если в ней найден указанный файл

Сообщение Georgio »

Цитата mrG0bliN:



нужно по задаче удалить только те папки которые внутри себя содержат файлы *.bin
CMD/BAT - Удаление папки, если в ней найден указанный файл










Код:

Код: Выделить всё

@echo off
for /d %%i in ("workshop\content\570\*") do 2>nul cmd/c "for %%j in ("%%i\*.bin") do @rd /q /s "%%i"& exit /b"
pause
Аватара пользователя
megaloman

Re: CMD/BAT - Удаление папки, если в ней найден указанный файл

Сообщение megaloman »

Код:

Код: Выделить всё

@Echo Off
FOR /F "usebackq delims=" %%f IN (`Dir "workshop\content\570\*.bin" /S /b /A:-D 2^>nul`) DO (
	If Exist "%%~dpf" (Echo "%%~dpf" & rd /s /q "%%~dpf")
)
pause

или

Код:

Код: Выделить всё

@Echo Off
FOR /R "workshop\content\570\" %%f IN (*.bin) DO (
	If Exist "%%~dpf" (Echo "%%~dpf" & rd /s /q "%%~dpf")
)
pause
Ответить

Вернуться в «Скриптовые языки администрирования Windows»