Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Удалить папки в каталоге по условию (http://forum.oszone.net/showthread.php?t=342350)

fb2boook 27-09-2019 11:33 2889808

Удалить папки в каталоге по условию
 
Добрый день! появилась нужда удалять большое количество папок по условию.
Дана начальная директория "All". в ней находятся множество папок. нужно пройти все эти папки, и если в какой то из них НЕТ файла 1.тхт, то удалить эту папку, и перейти к следующей и так до конца каталога "All".

Благодарю за решение!

DJ Mogarych 27-09-2019 13:40 2889823

Цитата:

Цитата fb2boook
в ней находятся множество папок. нужно пройти все эти папки »

Они находятся непосредственно в All, на одном уровне?

Powershell:
Код:

gci D:\temp\All -Directory |% {
    if (!(test-path "$($_.fullname)\1.txt")) {
    Remove-Item "$($_.fullname)" -Recurse -force -confirm:$false
    }
}


megaloman 27-09-2019 14:54 2889837

Код:

@Echo Off
cls
        Set "BoxIn=Z:\Box_In"
        Set "Ex=1.txt"

        Pushd "%BoxIn%" &&FOR /F "usebackq delims=" %%d IN (`2^>nul Dir /B /A:D`) DO If Not Exist "%%d\%Ex%" Echo RD /Q /S "%%d"
        Popd
Pause
Exit /B 0

Пропишите свой путь и имя файла, в боевом варианте Echo надо убрать

fb2boook 27-09-2019 15:31 2889846

Парни благодарю! дельное решение, прям гора с плеч )

megaloman 03-10-2019 10:02 2890572

Цитата:

Цитата Из PM
Дана начальная директория "All". в ней находятся множество папок. нужно пройти все эти папки, и если в какой то из них ЕСТЬ папка 'Data', то удалить эту папку(Data), и перейти к следующей и так до конца каталога "All".

Код:

@Echo Off
        Set "BoxIn=Z:\Box_In"
        Set "Dname=Data."

        FOR /F "usebackq delims=" %%d IN (`2^>nul Dir /B /S /A:D`) DO (
                If Exist "%%d\%Dname%\" Echo RD /Q /S "%%d\%Dname%\"
        )
Exit /B 0

в боевом варианте Echo надо убрать


Время: 06:51.

Время: 06:51.
© OSzone.net 2001-