batファイル 日付 フォルダ 時間 ファイル
ブログをはじめた時に作っていたcreate_file.batがまあまあできてきていると思う。
とりあえず生成部分を書きますw
@echo off
setlocal enabledelayedexpansion
REM 日にち取得
set newdate=%date:/=_%
echo %newdate%
if not exist %newdate% (mkdir %newdate%)
cd=%newdate%
REM 時間取得
set t=%time::=m%
set t=%t:~0,5%
set t=%t%s
if exist %t%.txt (%t%.txt) else (type %t%.txt >> %t%.txt && %t%.txt)
endlocal
>set newdate=%date:/=_%
この部分で%date%の中身が 2013/02/02 などの今日の日付になっているのですが、フォルダ・ファイル名は「/」という文字は使用できないので%date%に含まれている「/」を「_」(アンダーバー)に変換するという処理をおこなっています。(2013_02_02になります)
>if not exist %newdate% (mkdir %newdate%)
フォルダが無い場合生成してます。
>set t=%time::=m%
%time%には現在の時間(例えば12時だった場合12:00:00.00と秒単位)を表示します。今回も上での説明と同じように「:」はフォルダ・ファイル名に使用できませんので「:」をm(分)に変更しています。(12m00m00.00となります)
>set t=%t:~0,5%
入っている数値(文字)を5個までにします。(12m00)
>set t=%t%s
最後にs(second)を付け足して終了ですw(12m00s)
まだまだしょぼいですが、また機会があれば作りたいと思います。