バッチファイルで今日の日付 (YYYYMMDD 形式) を取得

バッチファイル (コマンドライン) で今日の日付を取得したい場合、「DATE /T」コマンドやあらかじめ定義されている「%DATE%」が利用できます。「%DATE%」の結果からスラッシュをのぞき、 YYYYMMDD 形式にするには以下のようにします。 *1

rem 日付を取得
set YYYYMMDD=%DATE:/=%
rem 今日の日付のフォルダを作成
mkdir %YYYYMMDD%

上記のコマンドを実行すると、今日の日付のフォルダ (20070704) が作成されます。 YYYYMMDD 変数には、今日の日付が格納されていますので、フォルダの作成以外にも利用することができます。

WSH (JScript, VBScript, etc...) や Perl を使えば以上の方法を容易に行うことができますが、バッチファイルで実行したい場合にやり方を忘れやすいため Tips として記述しておきます。 YYYYMMDD 形式の名前は、ファイルのバックアップを行う場合などに重宝します。

*1:注: システムの日付形式 (「echo %DATE%」の実行結果) は、「YYYY/MM/DD」というようにスラッシュが含まれている必要があります。