こんな感じかなーと思うものをめもめも…
まぁ、今更バッチファイルを書くこともなさそうですが、、、
@echo off
pushd %~dp0
set time2=%time: =0%
set startdt=%date:/=%-%time2:~0,2%%time2:~3,2%%time2:~6,2%
set logfile=%startdt%_%~n0.log
echo [ %date% %time% ] ============================== > %logfile% 2>&1
echo [ %date% %time% ] 処理を開始します。 >> %logfile% 2>&1
REM ダブルクリックで動いてしまうのを防止するため、引数 -exec をつけて実行すること
if "%~1" neq "-exec" (
echo [ %date% %time% ] 引数が不正です。 >> %logfile% 2>&1
echo [ %date% %time% ] 処理を終了します。 >> %logfile% 2>&1
type %logfile%
exit /b 1
)
REM ここに処理を記述します。
dir /? >> %logfile% 2>&1
if %errorlevel% neq 0 goto NG
REM 正常終了
:OK
echo [ %date% %time% ] 処理を終了します。 >> %logfile% 2>&1
type %logfile%
exit /b 0
REM 異常終了
:NG
echo [ %date% %time% ] 異常が発生しました。 >> %logfile% 2>&1
type %logfile%
exit /b 1