Home
474 words
2 minutes
【Unix】touchコマンドの解説
2025-02-22

最終更新:2025-02-22

touchコマンドは、Unix系システムにおいてファイルのタイムスタンプを更新するための基本的なコマンドである。もともとファイルが存在しない場合は、新規ファイルを作成する機能も持つ。

主な機能とオプション#

  1. タイムスタンプの更新
    ファイルの最終アクセス時刻と最終修正時刻を現在の時刻に更新する。
    例:

    touch example.txt
    
  2. 新規ファイルの作成
    指定されたファイルが存在しない場合は、新たに空のファイルを作成する。
    例:

    touch newfile.txt
    
  3. 特定の時刻を設定する
    -tオプションや-dオプションを使用することで、任意の日時にタイムスタンプを設定できる。
    例:

    touch -t 202502220800.00 scheduled.txt
    

    上記は2025年2月22日08:00:00と設定する例である。

  4. 参照ファイルのタイムスタンプに合わせる
    -rオプションを使用することで、他のファイルのタイムスタンプを参照して設定できる。
    例:

    touch -r reference.txt target.txt
    

ハンズオン#

以下、touchコマンドを用いた具体的な使用例を示す。実際のシェル環境で試すことで動作を確認することが望ましい。

1. 単純なタイムスタンプの更新および新規ファイル作成#

以下のコマンドを実行する。

touch myfile.txt

myfile.txtが存在しなければ新規作成され、既に存在する場合はそのファイルの最終アクセス時刻と最終修正時刻が現在の時刻に更新される。

2. 指定した日時にタイムスタンプを設定する#

ファイルのタイムスタンプを2025年2月22日08:00:00に設定するには、以下を実行する。

touch -t 202502220800.00 schedule.txt

この操作により、schedule.txtのタイムスタンプが指定日時に変更される。

3. 参照ファイルのタイムスタンプを用いる#

既存のファイルreference.txtのタイムスタンプに合わせ、別のファイルtarget.txtのタイムスタンプを設定するには、次のように実行する。

touch -r reference.txt target.txt

これにより、target.txtのタイムスタンプはreference.txtと同じとなる。

【Unix】touchコマンドの解説
https://ss0832.github.io/posts/20250222_touch_command_guide/
Author
ss0832
Published at
2025-02-22