バッチファイルを作成していると、現在日付や時刻を使いたい時って結構ありますよね。
たとえば、出力ファイルの名称を「ファイル名_yyyymmddhhmmss」みたいな感じで出したい時とか。
環境変数で現在日時などは持っているのですが、ファイル名などで使用する場合は、ちょっと加工が必要で面倒です。
以下のサンプルをそのまま使えば、簡単に現在日時を使用することができます。
1 2 3 4 5 6 7 8 |
rem ファイル名作成:ファイル名_yyyymmddhhmmss set Now_Date=%date:~0,4%%date:~5,2%%date:~8,2% set time2=%time: =0% set Now_Time=%time2:~0,2%%time2:~3,2%%time2:~6,2% set Result_File_Name=test_file_%Now_Date%_%Now_Time%.txt rem 作成したファイルに文字列を出力 echo テスト出力 > %~dp0%Result_File_Name% |
ちなみに、「%~dp0」はバッチファイルが存在するディレクトリです。
たとえば、実行したバッチが「D:\temp」にいるとしたら、「%~dp0」は「D:\temp」になるということです。
上の例だと、出力ファイルは「D:\temp\test_file_yymmddhhmmss.txt」になります。