PDA

Показать полную графическую версию : [решено] Переменное имя папки в скрипте, или изменение номера папки.


idk
30-09-2013, 19:48
Доброго всем времени суток,
Имеется скрипт, который проверяет директорию "Архив1" на наличие файлов с заданным расширение (.zip)
Перемещает найденный файлы в создаваемую директорию с текущей датой, например "01.01.2013".
Выполняет поиск и удаление устаревших файлов старше N дней, а также пустых папок и файлов вроде *.log
-V:\
--Архив1
---01.01.2013
---02.01.2013
---31.01.2013
--Архив2
---01.01.2013
---02.01.2013
---31.01.2013
--Архив3

Необходимо чтобы в скрипте менялся номер директории "Архив1" на "Архив2", далее на "Архив3" и так заданное количество циклов.

set datetemp=%date:~-10%

echo создание папки с текущей датой
MD V:\Архив1\%datetemp%
echo перемещение avi в созданную папку
for %%f in (V:\Архив1\*.zip) do move %%f V:\Архив1\%datetemp%
echo удаление log файлов
for %%f in (V:\Архив1\*.log) do del /q %%f
echo удаление пустых папок
for /d %%i in ("V:\Архив1\*") do rd /q "%%i" 2>nul

:START
set /a kol=0
echo %kol%
set user=%users%
echo %user%
for /d %%J in ("V:\Архив1\??.??.????") do (set folder_name=%%J&& echo %folder_name% && set /a kol=kol+1 && call :A %user%

%folder_name% %kol%)
exit

:A
set folder_name=%folder_name%
echo %folder_name%
set /a kol=%kol%
echo %kol%
set user=%user%
FORFILES /d -30 /p %folder_name% /m *.* /c "cmd /c del /f /s /q %folder_name%"

idk
16-10-2013, 10:14
кто нибудь сможет помочь в этом вопросе?

kiripanda
17-10-2013, 00:16
както так
set "Base=V:\Архив"

set datetemp=%date:~-10%
for /l %%a in (1,1,3) do (
set "Arcive=%Base%%%a"
setlocal enabledelayedexpansion

echo создание папки с текущей датой
echo MD "!Arcive!\%datetemp%"
echo бла-бла-бла
echo ...
echo.

endlocal
)

idk
25-10-2013, 14:59
Огромное спасибо!




© OSzone.net 2001-2012