TOUCH(1)

名称
touch - ファイルのアクセス時刻と変更時刻を変える

書式
touch [-acfhm] [-r file] [-t [[CC]YY]MMDDhhmm[.SS]] file ...

解説
touch は、 file で指定したファイルのアクセス時刻と変更時刻を、現 在の時刻に変えるものです。ファイルが存在しなかった場合は、デフォルトの ファイルのパーミッションで、サイズ 0 のファイルが作成されます。

オプションとしては以下のものがあります。

-a  ファイルのアクセス時刻を変えます。 同時に -m が指定されていなければ修正時刻は変えません。

-c  ファイルが存在しなかった場合のファイル作成を行いません。 touch はこれをエラー扱いしません。 エラーメッセージは表示せず、 戻り値にも影響しません。

-f  ファイルのアクセス許可がない場合でも、強制的に実行します。

-h  ファイルがシンボリックリンクの場合、 リンクが指すファイルの代りにシンボリックリンク自身の時刻を変えます。 -h は -c を暗黙的に指定しますので、新規ファイルは作成されないことに注意してください。

-m  ファイルの修正時刻を変えます。 同時に -a が指定されていなければアクセス時刻は変えません。

-r  アクセス時刻や修正時刻を設定する際、現在時刻ではなく、 file のアクセス時刻/修正時刻を用います。

-t  file のアクセス時刻と変更時刻を、指定した時刻に設定します。 引数は “[[CC]YY]MMDDhhmm[.SS]” で指定します。
    CC  西暦の千と百の位 (世紀)
    YY  西暦の十と一の位 (もし “YY” を指定して “CC” を省略した場合、 “YY” が 39 から 99 の 間なら 1939年 から 1999 年が、それ以外は 21 世紀の年とみなされます)
    MM  月。1から12
    DD  日。1から31
    hh  時間。0から23
    mm  分。0から59
    SS  秒。0から61

    “CC” と “YY” が指定されていないと、現在の年になります。 “SS” が指定されていないと、値は0となります。

診断

関連項目
utimes(2)

互換性
旧形式、つまり、第一引数で日付の指定を行なう方式も受け付けます。 -r や -t がない場合で、 少なくとも引数が 2 つあり、最初の引数が 10 進数の文字列で 8 文字か 10 文字の場合に、 “MMDDhhmm[YY]” の形式で日付が指定されたものとみなします。 それぞれの記号の扱いは -t オプションと同様です。 “YY” が 69 から 99 の 間なら 1969 年 から 1999 年が、それ以外は 2000 年 から 2068 年とみなされます。

歴史
touch ユーティリティは AT&T UNIX から現れました。

規格
touch ユーティリティは p1003.2 のスーパセットです。