Last active
August 29, 2015 14:16
-
-
Save tAkihiko/b8c3430e7ce0d9f55a67 to your computer and use it in GitHub Desktop.
ドラッグアンドドロップでファイル名に更新日付を加えてバックアップフォルダに格納するBatファイル。バックアップフォルダ自動作成機能付き。バックアップフォルダにログファイルがあればログを残して、なければログ無し。
This file contains 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 | |
setlocal EnableDelayedExpansion | |
pushd %~dp0 | |
REM 出力先 | |
set outdir=_backup | |
set log_file=_log.txt | |
REM バックアップ日時 | |
set bk_date=%DATE:~0,10% | |
::set bk_date=%bk_date:/=% | |
set bk_time=%TIME: =0% | |
set bk_time=%bk_time:~0,5% | |
::set bk_time=%bk_time::=% | |
if not exist %outdir%\nul mkdir %outdir% | |
if exist %outdir%\%log_file% ( | |
set /p log="変更ログ: " | |
echo %bk_date% %bk_time%>>%outdir%\%log_file% | |
if not #!log!# == ## ( | |
echo !log!>>%outdir%\%log_file% | |
) | |
) | |
:loop | |
if #%1# == ## goto break | |
call :Backup "%~1" | |
shift | |
goto loop | |
:break | |
if exist %outdir%\%log_file% ( | |
echo.>>%outdir%\%log_file% | |
) | |
exit | |
:Backup | |
REM ファイル更新日時 | |
set upd_datetime=%~t1 | |
set upd_date=%upd_datetime:~0,10% | |
set upd_date=%upd_date:/=% | |
set upd_time=%upd_datetime:~11,5% | |
set upd_time=%upd_time::=% | |
set target=%outdir%\"%~n1_%upd_date%_%upd_time%%~x1" | |
if exist %1\ ( | |
::xcopy /i /e /Y %1 %target% | |
7za a %target%.zip %1 | |
) else ( | |
copy /Y %1 %target% | |
) | |
if exist %outdir%\%log_file% ( | |
echo %target%>>%outdir%\%log_file% | |
) | |
exit /b |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment