ただバッチでメモ用のテキストファイルを作るだけ


はじめに

仕事でよくメモのテキストファイルを作っていたが毎回作るのもめんどくさくなったので、今更ながらテキストファイルを作るバッチを作成したのでメモ代わりとして記します。
コードはこちらから。

どういうもの?

バッチを叩くと…

今日の日付のメモが作成されます。

もう1回叩くと…

末尾に数字が追加されてメモが作成されます。

いっぱい叩くと…

いっぱいできます。

ただそれだけです。

コード

以下にコードを示します。

makeMemo.bat
@echo off

setlocal enabledelayedexpansion

set today=%date:~0,4%%date:~5,2%%date:~8,2%
set num=1

for %%a in (%today%*.txt) do (
  rem 今日分の対象ファイル分カウントアップしていく
  set /a num=num+1
)

rem メモファイルを作成する
if %num%==1 (
  rem 今日分のファイルがない場合はそのまま作成
  copy nul %today%メモ.txt
) else (
  rem 今日分のファイルがある場合は末尾の番号を増やして作成
  copy nul %today%メモ_!num!.txt
)

setlocal enabledelayedexpansionの宣言がないとどうやらforの中での計算が全体に反映されないようです。

終わりに

バッチフィルは今まで避けてきましたが、私が扱ったことのある言語とは異なり半角スペースや形式にうるさいと感じました。
日々のメモ帳作成に不満を感じている方(いない)に喜んでいただけたら幸いです。
このバッチを作る時間で一体何個のメモファイルを手動作成できただろうか?