2つの場所で同期とバックアップを行うバッチBatスクリプト


最近、兼職でドキュメントサーバーをメンテナンスするため、両地のドキュメントを同期とバックアップする必要があります.サーバーのドキュメントが変更された場合、自動的に別のサーバーに同期する必要があります.
バッチbatスクリプトを使用してループします.
@echo off
title SyncToy run in progress...
goto BEGIN

:COMMENT
echo ##############################################
rem 	while_sync_loop.bat
rem 	  By long.luo @2012/09/06
rem 		
rem 	 :
rem 		 , .
rem 
echo ##############################################
pause

:BEGIN
echo ##############################################
echo Sync Files Loop begin...
echo
goto DELSYNCLOG

:DELSYNCLOG
echo ##############################################
echo Delete lastsync.log
del lastsync.log
goto ONE_TIME

:SEND_RTX_NOTOFY

echo SEND_RTX_NOTOFY
...
call send_rtx_msg.bat
goto ONE_TIME
pause

:CHECKSYNC

echo CHECKSYNC...
for /f "tokens=*" %%i in ('findstr /i "Copied.*bytes" lastsync.log') do (
    for /f "tokens=2" %%j in ("%%i") do if %%j gtr 0 (echo %%j bytes files had synced.&goto SEND_RTX_NOTOFY) else echo NO Need synced.&goto ONE_TIME
)
pause

:ONE_TIME
echo Attempting files sync. Please wait...
call sync.bat >lastsync.log
echo sync end.
goto CHECKSYNC
ping 127.0.0.1 -n 30 >nul
goto DELSYNCLOG


ループbatスクリプトはsyncを呼び出す.bat、SyncToyツールを使用して資料の同期を行います.
@echo off
goto BEGIN

:COMMENT
echo ##############################################
rem		sync.bat
rem 	  By long.luo @2012/09/06
rem 		
rem 	 :
rem 		 、 .
rem 
echo ##############################################
pause

:BEGIN
echo SyncToy Log starting at
time /T
date /T
echo ##############################################
echo 	Checking connection to Changan Server...
echo ##############################################
PING -n 2 -w 10 172.16.101.136 |find "TTL=" && goto CHECKFOLDER
goto PINGFAIL

:CHECKFOLDER
echo ##############################################
echo ChangAn Server is online. Checking for Folder...
if exist F:\f_sync_files\ goto SYNC
goto CHECKFOLDERFAIL

:SYNC
echo ##############################################
echo Begin syncing files...
echo ##############################################
"F:\Program Files\SyncToy 2.1\SyncToyCmd" -R "MyTest"
if %ERRORLEVEL% == 0 goto SUCCESS
goto SYNCFAIL

:PINGFAIL
echo ##############################################
echo ChangAn Server not found. Exiting
goto END

:CHECKFOLDERFAIL
echo ##############################################
echo FOLDER not found. Exiting
goto END

:SUCCESS
echo ##############################################
echo SyncToy completed successfully. Exiting
goto END

:SYNCFAIL
echo ##############################################
echo SyncToy Failed. Exiting
goto END

:END
echo ##############################################
echo SyncToy Log ending at
time /T
date /T