copy コマンドだけでファイルに touch する方法
もしかして知らなかったの私だけだろうか。せっかくだから書いておく。
さっきなんとなく OS/2 の help コマンドで help copy とかやってみたら「日付と時刻の変更」というなんか微妙な機能のことが載っていた。
ファイルの内容を変更せずに日付と時刻を現在の日付と時刻に設定するには,正符号の後にコンマを2つ(+,,)指定します。
カレント・ディレクトリー内のすべてのファイルの日付と時刻を,現在の日付と時刻に更新するには,次のように入力します。
COPY *.* /B + ,,
へー、「あらかじめ用意しといた 0 バイトのファイルを連結する」よりはスマートでゲスな、そういや Windows も cmd.exe だしできるかな…ってことでやってみたら Windows2000 のコマンドプロンプト(cmd.exe)でもいけた。
調子こいて Windows95 の MS-DOS プロンプト(command.com)でもやってみた。エラーは出なかったが上書き確認のプロンプトが出た。/Y オプションが必要らしい(COPY /Y hoge /B +,,)。さらにファイル指定でワイルドカードを使うと誤動作する(というかファイルが消える!)。command.com 上での利用は危険なようです。