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

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

Аватара для Hollou

Новый участник


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

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


Допилил для 2ой задачи.
Вот >>
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sSourceFolder=
set sDestFolder=

call :GetLastPartName "%sSourceFolder%"

call :GetTemporaryName

for /l %%i in (1, 1, 29) do (
	xcopy.exe "%sSourceFolder%" "%sDestFolder%\%LastPartName:~0,-1%%%i\" /e /f /h /r /k /y
)

endlocal
PAUSE
rem ==========================================================================

rem ==========================================================================
:GetLastPartName
    setlocal enableextensions enabledelayedexpansion

    set sLastPart=%~nx1
    set sProcName=%~0

    endlocal & set %sProcName:~4%=%sLastPart%
    exit /b 0
rem ==========================================================================

rem ==========================================================================
rem Функция GetTemporaryName()
rem 
rem Серый форум / CMD/BAT: генерация пути для временного файла или папки
rem (http://forum.script-coding.com/viewtopic.php?id=6259)
rem ==========================================================================
:GetTemporaryName
    setlocal enableextensions enabledelayedexpansion

:NextName
    set sTempName=%temp%\temp%random%.tmp

    if exist "%sTempName%" goto :NextName

    set sProcName=%~0

    endlocal & set %sProcName:~4%=%sTempName%
    exit /b 0
rem ==========================================================================


Вроде всё порядком.

Кривоватое решение для первой задачи (слегка изменил строку с мклинк):
Код: Выделить весь код
rem	echo mklink.exe /d "%sDestFolder%\%LastPartName:~0,-1%%%i\%sExcludeFolder%" "%sSourceFolder%\%sExcludeFolder%"
cd "%sDestFolder%\%LastPartName:~0,-1%%%i"
mklink /d %sExcludeFolder% "%sSourceFolder%\%sExcludeFolder%"
Пашет только с отрабатыванием из копированной папки.

Последний раз редактировалось Hollou, 24-02-2012 в 13:23.


Отправлено: 11:51, 24-02-2012 | #18