1. 機能 touch.exeはファイルのタイムスタンプの変更ツールです。 日時の指定がない場合は現在の日付、現在の時刻にします。 ありえない日時でも、MS-DOSのタイムスタンプとして表現可能であれば、設定で きます。 対象ファイルにはアーカイブ属性がセットされます。 ボリュームラベル、デバイス、ディレクトリのタイムスタンプは変更できません。 処理成功時はERRORLEVELに0を返し、タイムスタンプの変更に失敗した場合に1を 返し、その他の異常時には2を返します。 2. 起動方法 touch [-acdfmv] [-d time | -t ref_file | MMDD[hhmm[[ss[CC]]YY]] | [[CC]YY]MMDDhhmm.ss] files... -a 無視します。指定の有無にかかわらず、タイムスタンプを変更します。 -c 指定したファイルが存在しない場合、新たに作成しません。 省略時は、指定したファイルが存在しない場合サイズが0バイトのファ イルを作成します。 -d timeで指定した1970年1月1日からの経過秒で日時を指定します。 -f 無視します。指定の有無にかかわらず、タイムスタンプの変更が失敗し ても処理を続行し、失敗時はERRORLEVELに1を返します。 -t ref_fileで指定したファイルのタイムスタンプと同一のタイムスタン プにします。 -m 無視します。指定の有無にかかわらず、タイムスタンプを変更します。 -v タイムスタンプが変更されたファイルを表示します。 MMDD[hhmm[[ss[CC]]YY]] | [[CC]YY]MMDDhhmm.ss 日付と時刻。 年(YY:00〜99、CCYY:1980〜2107)、月(MM:00〜15)、日(DD:00〜31)、 時(hh:00〜31)、分(mm:00〜63)、秒(ss:00〜63)。 MMDD月日(4桁)、MMDDhhmm月日時分(8桁)、MMDDhhmmYY月日時分年(10桁)、 MMDDhhmmssYY月日時分秒年(12桁)、MMDDhhmmssCCYY月日時分秒年(14桁)、 MMDDhhmm.ss年月日時分.秒(11桁)、YYMMDDhhmm.ss年月日時分.秒(13桁)、 CCYYMMDDhhmm.ss年月日時分.秒(15桁)のいずれかです。 年の指定で0〜79は2000年〜2079年と見なします。 年の指定で80〜99は1980年〜1999年と見なします。 MS-DOSの仕様では年は1980〜2099ですが、2107年まで設定可能です。 年省略時は現在の年にします。 秒は必ず偶数秒に丸められます。 秒省略時は0秒と見なします。 時刻省略時は時刻は変更しません。 files... ファイル名。 3. 実行例 C:\>touch 0816102198 dostouch.c touch.exe 4. 制限 数字のファイル名は日時の指定と間違えられないように .\ を先頭に付ける必要 があります。ファイル名がMMDD月日(4桁)、MMDDhhmm月日時分(8桁)、MMDDhhmm.ss年 月日時分.秒(11桁)と一致する場合は、そのファイル名を日時の指定と見なしてしま います。 例 C:\>touch .\08161021 5. 補足 dirコマンドでは1980年00月00日にすると日付と時刻が表示されなくなります。 dirコマンドでは年は二桁で表示するため、1980年〜1999年と2080年〜2099年の 区別はつきません。2100年〜2107年はすべて99で表示するため1999年と2099年〜2107 年は区別できません。 Windows3.1/95のファイルマネージャでは2000年問題を未修正の場合、2000年以降 は:0、:1...となります。修正されたファイルマネージャはhttp://www.microsoft.com/ japan/よりダウンロードできます。未修正のファイルマネージャでは1980年〜1999年 と2080年〜2099年の区別ができ、修正されたファイルマネージャでは区別ができませ ん。 正しく表示できるツールの例としてFILMTN(FMxnnn.LZH)、LT(LT0000nn.LZH)など があります。