Created
April 20, 2012 13:48
-
-
Save ramsesoriginal/2428817 to your computer and use it in GitHub Desktop.
BAT: get files from Server using a scheduled task
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
set sourceMapping=X: | |
set sourceUNC=\\Server\folder | |
set sourceUser=user | |
set destination=C:\folder | |
set folderBackup=Backup | |
set folderError=Error | |
set folder=Folder | |
set filemask=*.* | |
set runEveryMinutes=5 | |
set taskname=getFiles | |
REM #### Dies sollte immer so stimmen ### | |
set source=%sourceMapping%\ | |
set destination=%destination%\ | |
set folderBackup=%folderBackup%\ | |
set folderError=%folderError%\ | |
set originalfolder=%folder% | |
set folder=%folder%\ | |
REM ############################# | |
REM # END Configuration # | |
REM ############################# | |
REM ############################# | |
REM # INITIALISATION # | |
REM ############################# | |
if "%1"=="-skipTask" GOTO afterCreateTask: | |
echo Creating Task | |
schtasks /Create /sc MINUTE /MO %runEveryMinutes% /tn %taskname% /tr "\"%~fn0\" -skipTask" /F | |
echo Mapping Drive | |
NET USE %sourceMapping% %sourceUNC% /user:%sourceUser% /persistent:yes | |
:afterCreateTask | |
REM ############################# | |
REM # Processing Files # | |
REM ############################# | |
echo Processing files | |
echo Backup: | |
REM ############################# | |
REM # Backup # | |
REM ############################# | |
xcopy "%source%%folder%%filemask%" "%source%%folderBackup%%folder%" /V /C /F /Y /Z /I | |
if errorlevel 0 goto copyFiles | |
if errorlevel 1 goto endFiles | |
echo An error occurred during the backup of the Text files. All files will be copied to %source%%folderError%%folderBackup% | |
xcopy "%source%%folder%%filemask%" "%source%%folderError%%folderBackup%%folder%" /C /F /Y /Z /I | |
:copyFiles | |
REM ############################# | |
REM # Actual copy # | |
REM ############################# | |
echo Proceeding to copy the files to the correct folder | |
xcopy "%source%%folder%%filemask%" "%destination%%folder%" /V /C /F /Y /Z /I | |
set afterFileCopy=endFiles | |
if errorlevel 0 goto deleteCopiedFiles | |
if errorlevel 1 goto deleteCopiedFiles | |
echo An error occurred during the copying of the Text files. The files are backed up in %source%%folderBackup%. | |
set afterFileCopy=errorFiles | |
:deleteCopiedFiles | |
REM ############################# | |
REM # Delete the copied files# | |
REM ############################# | |
echo Deleting copied files | |
forfiles /p "%destination%%originalfolder%" /s -m %filemask% /c "cmd /c del /F 0x22%source%%folder%0x22\@file" | |
goto %afterFileCopy% | |
:errorFiles | |
echo The files containing errors will be moved to %source%%folderError%%folder% | |
move "%source%%folder%%filemask%" "%source%%folderError%%folder%" /Y | |
:endFiles | |
REM ############################# | |
REM # Delete backups # | |
REM ############################# | |
echo Deleting Backupts that are more then a week old | |
forfiles /p "%source%%folderBackup%%originalfolder%" /s -m %filemask% /d -7 /c "cmd /c del @path" | |
@echo on |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment