Linuxのtouchは、便利なコマンドです。
新しい空のファイルを作成できるほか、ファイルのタイムスタンプを更新することもできます。
ここでは、touch コマンドの基本的な使い方と、知っておくと便利なオプションを紹介します。
touch コマンドの基本的な使い方
1. 空のファイルを作成する
touch コマンドで、新しい空のファイルを作成する方法を紹介します。
次のコマンドを実行すると、指定した名前のファイルが作成されます。
コピーしました!
touch filenameこのコマンドでは、filename という名前の空のファイルが作成されます。
2. ファイルのタイムスタンプを更新する
既存のファイルに対して、touchコマンドを使うと、「アクセス時間」と「修正時間」のタイムスタンプが、現在の時間に更新されます。
ファイルの内容を変更せず、ファイルが「最近使用された」ことを示すことができるようになります。
コピーしました!
touch existingfile.txttouch コマンドの便利なオプション
ここでは、touch コマンドの5つのオプションを紹介します。
1. -a オプション : アクセスタイムを更新する
-a オプションを使用すれば、ファイルの「アクセスタイム」(最後にファイルが読まれた時間)のみを更新できます。
コピーしました!
touch -a filenameアクセスタイムは、次のls -lu コマンドを使うことで確認可能です。
コピーしました!
ls -lu2. -m オプション: 修正時間の更新
-m オプションを使用すると、ファイルの「修正時間」(最後にファイルが書き換えられた時間)のみを更新することができます。。
コピーしました!
touch -m filename3. -t オプション: タイムスタンプを指定
-t オプションを使うと、ファイルのタイムスタンプを指定した日時に設定できます。
日時を指定するフォーマットは [CC]YYMMDDhhmm[.ss] です。
コピーしました!
touch -t 202408011200.30 filename上記のコマンドは、filename のタイムスタンプを「2024年8月1日12時00分30秒」に設定します。
4. -c オプション: 指定したファイルが存在しない場合にファイルを作成しない
-c オプションを使うと、指定したファイルが存在しない場合に、新しいファイルを作成しないようにできます。つまり、ファイルが存在しない場合は、何も起きないことになります。
ファイルが存在する場合はタイムスタンプが更新されます。
コピーしました!
touch -c filename5. -r オプション: 他のファイルのタイムスタンプをコピー
-r オプションを使うと、別のファイルのタイムスタンプをもとに、指定したファイルのタイムスタンプに設定します。
コピーしました!
touch -r fileA fileBこのコマンドは、fileB のタイムスタンプを fileA と同じに設定します。

