Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Freezet
извиняюсь за назидательный тон, но незнание не освобождает от чтения справки (зачем шапка?),
от готового скрипта мало толку если вы сами не приложили к нему свою руку и голову

Цитата Freezet:
что я должен сделать?
разбить задачу на маленькие подзадачи, попытаться самостоятельно решить каждую в отдельности:

1. определить по имени файла имя архива;
2. добавить файл в архив и удалить оригинал;
3. определить по имени архива имя папки назначения;
4. отделить старые архивы от актуальных;
5. переместить старые архивы в свои папки хранения;
6. удалить старые папки хранения в каталоге назначения.

каждая задача может решаться по разному
Код: Выделить весь код
@Echo Off
SetLocal EnableDelayedExpansion

Set DIR1=C:\CSTRIKE
Set DIR2=C:\DEMOS
Set NMAX=5

For %%i In ("%DIR1%\*.dem") Do Rar m -ep %%i.rar %%i
For %%i In ("%DIR1%\*.rar") Do (
    Set $NAME=%%~ni
    Set $Y=!$NAME:~3,2!
    Set $M=!$NAME:~5,2!
    Set $D=!$NAME:~7,2!

    If "%DATE%" NEQ "!$D!.!$M!.20!$Y!" (
        Set $PATH=%DIR2%\!$D!.!$M!.!$Y!\
        If Not Exist "!$PATH!" MD "!$PATH!"
        MOVE "%%i" "!$PATH!"
    )
)
For /F "Delims=" %%i In ('DIR /O:-D /A:D /B "%DIR2%\*"') Do (
    Set /A NMAX -=1
    If !NMAX! LSS 0 RD /S /Q "%DIR2%\%%i"
)
З.Ы. Кстати, про секунды неясность - в имени файла их нет, а имя архива в условии в точности совпадает именем файла... или старые файлы перезаписываются?.. тогда и в архиве они тоже будут перезаписываться!

Последний раз редактировалось amel27, 26-11-2008 в 10:19. Причина: оффтоп удален


Отправлено: 04:18, 26-11-2008 | #484