Имя пользователя:
Пароль:
 

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

Ветеран


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

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


Пробуйте:
читать дальше »
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sSourceFolder=C:\SCAN
set sDestFolder=Q:\
set sBackupFolder=C:\SCAN\BACK

set sLogFile=%sBackupFolder%\Log.log

call :GetTemporaryName

if not exist "%sSourceFolder%\." (
	echo Can't find source folder [%sSourceFolder%].
	exit /b 1
)

if not exist "%sDestFolder%\." (
	echo Can't find destination folder [%sDestFolder%].
	exit /b 2
)

if not exist "%sBackupFolder%\." (
	echo Can't find folder for backup [%sBackupFolder%].
	exit /b 3
)

>>"sLogFile%" (
	echo Start transfer at %date% %time%
	
	for %%i in ("%sSourceFolder%\*.txt") do (
		set sCurrFileName=%%~ni
		>"%TemporaryName%" echo !sCurrFileName:-doc1=!
		>nul copy /b /y "%TemporaryName%"+"%%~i" "%sDestFolder%\%%~nxi"
		>nul copy /b /y "%TemporaryName%"+"%%~i" "%sBackupFolder%\%%~nxi"
		echo %%~nxi
		del /f /q "%%~i"
	)
	
	echo Finish transfer at %date% %time%
	echo.
)
del /f /q "%TemporaryName%"

endlocal
exit /b 0

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 ==========================================================================
Многое переделал.
Это сообщение посчитали полезным следующие участники:

Отправлено: 03:52, 09-07-2014 | #12