昨日の日付を取得するコマンド(windows)


まずコマンドプロンプトを立ち上げる。
(ショートカット)windowsキー+R
cmdと入力してEnter


本日の日付を表示するには、以下のコマンドを入力する。
echo %date%


※結果※
2006/08/22


次に昨日の日付を取得したいのだが、残念ながらwindowsコマンドには該当するコマンドが用意されていない。
そこで強引ではあるが、数値計算によって昨日日付を取得する。


まず、日にちの部分を取得する。
set today=%date:~8,2%


上記コマンドは、dateコマンドで取得できる文字列"2006/08/22"のインデックスが8の文字から2文字分をtodayという変数に代入している。
つまりtodayには"22"が入っている。


次にtodayから1引く。
set /A yesterday=%today%-1


上記コマンドは、変数todayの値から1を引いた値を変数yesterdayに代入している。
数値計算する場合は、setコマンドに /A オプションを付加する。


最後に昨日日付を表示する。
echo %date:~0,8%%yesterday%


ちなみに上記方法では、1日の場合、先月の最終日を取得することができない。