Вложенный FOR
Здравствуйте. Подскажите по следующему коду:
Код:
setlocal enableextensions enabledelayedexpansion
set nameFolder=G:\Hegenscheidt\Documentation\Results
set Tmp1=tempfolder.tmp
::Получаем список папок в папке %nameFolder%
del %Tmp1% >nul
for /F "delims=" %%A in ('dir "%nameFolder%" /b /a:d') do (
Echo %%A>>%Tmp1%
)
for /F "delims=" %%B in (%Tmp1%) do (
for /R %nameFolder%\%%~B %%I In (*.pdf) Do If %%~zI LSS 3072 (
Del /F /Q "%%~I"
)
)
pause
Получаю имя папки из файла %Tmp1% в %%B. Затем, нужно подставить имя данной папки в путь для следующего цикла FOR, но ...
в строке for /R %nameFolder%\%%~B ... %%~B - не раскрывается в значение и соответственно путь поиска файлов неверный. Если прописать путь "жёстко", то всё работает.
Подскажите, пожалуйста, как исправить.
|
Petya V4sechkin |
31-03-2016 08:33 2621546 |
Fresh96, как-то так:
Код:
@echo off
set nameFolder=G:\Hegenscheidt\Documentation\Results
for /F "delims=" %%A in ('dir "%nameFolder%" /B /AD') do (
for /F "delims=" %%I in ('dir "%nameFolder%\%%~A\*.pdf" /B /S /A-D') do (
if %%~zI LSS 3072 del /F /Q "%%~I"
)
)
P. S. Можно вообще упростить до одного цикла, если PDF-файлы в самой корневой папке %nameFolder% не критичны.
|
Время: 22:08.
© OSzone.net 2001-