2013年4月30日火曜日

DOSバッチでの曜日計算 ツェラーの公式

DOSバッチで、日曜の夜だけ特定処理を実行させたいなど、曜日判定を行いたい場合に使用


REM 今日の曜日の算出(ツェラーの公式)


set /A YYYY=%DATE:~0,4% * 1
set /A MM=%DATE:~5,2% * 1
set /A DD=%DATE:~8,2% * 1
echo Today : %YYYY% %MM% %DD%

if %MM% LEQ 2 (
set /A YYYY=%YYYY% - 1
set /A MM=%MM% + 12
)

set /A YOBI=(%YYYY% + %YYYY% / 4 - %YYYY% / 100 + %YYYY% / 400 + (13 * %MM% + 8) / 5 + %DD%) %% 7

if %YOBI% == 0 echo 日
if %YOBI% == 1 echo 月
if %YOBI% == 2 echo 火
if %YOBI% == 3 echo 水
if %YOBI% == 4 echo 木
if %YOBI% == 5 echo 金
if %YOBI% == 6 echo 土

  (参考)http://ja.wikipedia.org/wiki/%E3%83%84%E3%82%A7%E3%83%A9%E3%83%BC%E3%81%AE%E5%85%AC%E5%BC%8F

0 件のコメント:

コメントを投稿