WEBサーバー robocopy バックアップ .bat メモ
@echo off
cd %~p0
set PS_COMMAND=`powershell "(Get-Date).ToString('ddd')"`
rem IP アドレス
rem set DEST_DIR=\\192.168.0.150\
rem コピー元
set SOURCE_DIR=D:\
set File_Name_Bottom=曜_バックアップログ.log
for /f "usebackq delims=" %%A in (%PS_COMMAND%) do set DAYOFWEEK=%%A
echo %DAYOFWEEK%
pause
rem ========= 土曜日処理 =========
if %DAYOFWEEK%==土 (
set DEST_DIR=G:\
rem ログファイル名 (土曜日)
set LOG_FILE_NAME=%DAYOFWEEK%%File_Name_Bottom%
rem ========= 日曜日処理 =========
) else if %DAYOFWEEK%==日 (
set DEST_DIR=H:\
rem ログファイル名 (日曜日)
set LOG_FILE_NAME=%DAYOFWEEK%%File_Name_Bottom%
rem ========= 月曜日処理 =========
) else if %DAYOFWEEK%==月 (
set DEST_DIR=F:\
rem ログファイル名 (月曜日)
s set LOG_FILE_NAME=%DAYOFWEEK%%File_Name_Bottom%
rem ========= 火曜日処理 =========
) else if %DAYOFWEEK%==火 (
set DEST_DIR=F:\
rem ログファイル名 (火曜日)
set LOG_FILE_NAME=%DAYOFWEEK%%File_Name_Bottom%
rem ========= 水曜日処理 =========
) else if %DAYOFWEEK%==水 (
set DEST_DIR=F:\
rem ログファイル名 (水曜日)
set LOG_FILE_NAME=%DAYOFWEEK%%File_Name_Bottom%
rem ========= 木曜日処理 =========
) else if %DAYOFWEEK%==木 (
set DEST_DIR=F:\
rem ログファイル名 (木曜日)
rem set tmp=%DAYOFWEEK%%File_Name_Bottom%
set LOG_FILE_NAME="%DAYOFWEEK%%File_Name_Bottom%"
rem set LOG_FILE_NAME=%DAYOFWEEK%%File_Name_Bottom%
copy nul %LOG_FILE_NAME%
rem echo "aaa" >> %DAYOFWEEK%%File_Name_Bottom%
rem robocopy "%DEST_DIR%\夏目 智徹 最新バックアップ" "%DEST_DIR%\前回バックアップ" /MIR /XO /XA:SH /NP /NDL /R:0 /W:0 /XJD /XJF /FFT /XD "System Volume Information" $RECYCLE.BIN /log:%LOG_FILE_NAME%
rem robocopy "C:\Users\natsume\Documents\保存ディレクトリ" "C:\Users\natsume\Documents\backup_test_tosy" /mir /r:0 /w:0s
robocopy "D:\" "E:\" /MIR /XO /XA:SH /NP /NDL /R:0 /W:0 /XJD /XJF /FFT /XD "System Volume Information" $RECYCLE.BIN
if ERRORLEVEL 16 echo ***FATAL ERROR*** >> %LOG_FILE_NAME%
if ERRORLEVEL 15 echo FAIL(MISM XTRA COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 14 echo FAIL(MISM XTRA) >> %LOG_FILE_NAME%
if ERRORLEVEL 13 echo FAIL(MISM COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 12 echo FAIL(MISM) >> %LOG_FILE_NAME%
if ERRORLEVEL 11 echo FAIL(XTRA COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 10 echo FAIL(XTRA) >> %LOG_FILE_NAME%
if ERRORLEVEL 9 echo FAIL(COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 8 echo FAIL(8) >> %LOG_FILE_NAME%
if ERRORLEVEL 7 echo OK(MISM XTRA COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 6 echo OK(MISM XTRA) >> %LOG_FILE_NAME%
if ERRORLEVEL 5 echo OK(MISM COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 4 echo OK(MISM) >> %LOG_FILE_NAME%
if ERRORLEVEL 3 echo OK(XTRA COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 2 echo OK(XTRA) >> %LOG_FILE_NAME%
if ERRORLEVEL 1 echo OK(COPY) >> %LOG_FILE_NAME%
if ERRORLEVEL 0 echo OK(--no change--) >> %LOG_FILE_NAME%
echo %ERRORLEVEL% >> %LOG_FILE_NAME%
pause
rem ========= 金曜日処理 =========
) else if %DAYOFWEEK%==金 (
set DEST_DIR=F:\
rem ログファイル名 (金曜日)
set LOG_FILE_NAME=%SOURCE_DIR%金曜_バックアップログ.log
)
rem ===================== バックアップ処理
rem robocopy %SOURCE_DIR% "%COPY_TO_DIR%" /MIR /XO /XA:SH /NP /NDL /R:0 /W:0 /XJD /XJF /FFT /XD %LOG_FILE_NAME%
rem robocopy "C:\Users\natsume\Documents\保存ディレクトリ" "C:\Users\natsume\Documents\backup_test_tossy" /MIR /XO /XA:SH /NP /NDL /R:0 /W:0 /XJD /XJF /FFT