Linux ”touch” コマンド解説 便利なオプション5選を紹介

Linuxのtouchは、便利なコマンドです。

新しい空のファイルを作成できるほか、ファイルのタイムスタンプを更新することもできます。

ここでは、touch コマンドの基本的な使い方と、知っておくと便利なオプションを紹介します。

touch コマンドの基本的な使い方

1. 空のファイルを作成する

touch コマンドで、新しい空のファイルを作成する方法を紹介します。

次のコマンドを実行すると、指定した名前のファイルが作成されます。

コピーしました!

bash
touch filename

このコマンドでは、filename という名前の空のファイルが作成されます。

2. ファイルのタイムスタンプを更新する

既存のファイルに対して、touchコマンドを使うと、「アクセス時間」と「修正時間」のタイムスタンプが、現在の時間に更新されます。

ファイルの内容を変更せず、ファイルが「最近使用された」ことを示すことができるようになります。

コピーしました!

bash
touch existingfile.txt

touch コマンドの便利なオプション

ここでは、touch コマンドの5つのオプションを紹介します。

1. -a オプション :  アクセスタイムを更新する

-a オプションを使用すれば、ファイルの「アクセスタイム」(最後にファイルが読まれた時間)のみを更新できます。

コピーしました!

bash
touch -a filename

アクセスタイムは、次のls -lu コマンドを使うことで確認可能です。

コピーしました!

bash
ls -lu

2. -m オプション: 修正時間の更新

-m オプションを使用すると、ファイルの「修正時間」(最後にファイルが書き換えられた時間)のみを更新することができます。。

コピーしました!

bash
touch -m filename

3. -t オプション: タイムスタンプを指定

-t オプションを使うと、ファイルのタイムスタンプを指定した日時に設定できます。

日時を指定するフォーマットは [CC]YYMMDDhhmm[.ss] です。

コピーしました!

bash
touch -t 202408011200.30 filename

上記のコマンドは、filename のタイムスタンプを「2024年8月1日12時00分30秒」に設定します。

4. -c オプション: 指定したファイルが存在しない場合にファイルを作成しない

-c オプションを使うと、指定したファイルが存在しない場合に、新しいファイルを作成しないようにできます。つまり、ファイルが存在しない場合は、何も起きないことになります。

ファイルが存在する場合はタイムスタンプが更新されます。

コピーしました!

bash
touch -c filename

5. -r オプション: 他のファイルのタイムスタンプをコピー

-r オプションを使うと、別のファイルのタイムスタンプをもとに、指定したファイルのタイムスタンプに設定します。

コピーしました!

bash
touch -r fileA fileB

このコマンドは、fileB のタイムスタンプを fileA と同じに設定します。