Linuxの「タッチ」コマンドの8つの実用例


Linuxでは、すべてのファイルがタイムスタンプに関連付けられており、すべてのファイルに最終アクセス時刻、最終変更時刻、および最終変更時刻の情報が格納されています。したがって、新しいファイルを作成したり、既存のファイルにアクセスまたは変更したりするたびに、そのファイルのタイムスタンプが自動的に更新されます。

この記事では、Linuxtouchコマンドのいくつかの便利な実用例について説明します。 touchコマンドは、Unix/Linuxオペレーティングシステムの標準プログラムであり、ファイルのタイムスタンプを作成、変更、および変更するために使用されます。タッチコマンドの例に進む前に、次のオプションを確認してください。

タッチコマンドオプション

  1. -a, change the access time only
  2. -c, if the file does not exist, do not create it
  3. -d, update the access and modification times
  4. -m, change the modification time only
  5. -r, use the access and modification times of file
  6. -t, creates a file using a specified time

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

次のtouchコマンドは、sheenaという空の(ゼロバイト)新しいファイルを作成します。

# touch sheena

2.複数のファイルを作成する方法

touchコマンドを使用して、複数の単一ファイルを作成することもできます。たとえば、次のコマンドは、sheena、meena、leenaという名前の3つのファイルを作成します。

# touch sheena meena leena

3.ファイルアクセスと変更時間を変更する方法

leenaというファイルの最終アクセス時刻と変更時刻を変更または更新するには、次のように-aオプションを使用します。次のコマンドは、ファイルの現在の時刻と日付を設定します。 leenaファイルが存在しない場合は、その名前で新しい空のファイルが作成されます。

# touch -a leena

findコマンドやlsコマンドなどの最も一般的なLinuxコマンドは、ファイルの一覧表示と検索にタイムスタンプを使用します。

4.新しいファイルの作成を回避する方法

touchコマンドで-cオプションを使用すると、新しいファイルの作成を回避できます。たとえば、次のコマンドは、leenaというファイルが存在しない場合、そのファイルを作成しません。

# touch -c leena

5.ファイル変更時間を変更する方法

leenaというファイルの唯一の変更時刻を変更したい場合は、touchコマンドで-mオプションを使用します。ファイルの最終変更時刻(アクセス時刻ではない)のみが更新されることに注意してください。

# touch -m leena

6.アクセス時間と変更時間を明示的に設定する

touchコマンドで-cおよび-tオプションを使用して、時間を明示的に設定できます。形式は次のようになります。

# touch -c -t YYDDHHMM leena

たとえば、次のコマンドは、ファイルリーナへのアクセスと変更の日時を現在の年(2012年)の12月10日17:30(17:30 p.m.)に設定します。

# touch -c -t 12101730 leena

次に、ls -lコマンドを使用して、ファイルleenaのアクセス時間と変更時間を確認します。

# ls -l

total 2
-rw-r--r--.  1 root    root   0 Dec 10 17:30 leena

7.別のファイルのタイムスタンプの使用方法

次の-rオプションを指定したtouchコマンドは、ファイルmeenaのタイムスタンプをleenaファイルのタイムスタンプで更新します。したがって、両方のファイルが同じタイムスタンプを保持します。

# touch -r leena meena

8.指定した時間を使用してファイルを作成します

現在の時刻以外の指定した時刻でファイルを作成する場合は、形式を指定する必要があります。

# touch -t YYMMDDHHMM.SS tecmint

たとえば、以下のコマンドtouchコマンドに-tオプションを指定すると、tecmintファイルに午後18時30分55秒のタイムスタンプが与えられます。 2012年12月10日。

# touch -t 201212101830.55 tecmint

「マンタッチ」を使用するその他のオプションについては、タッチコマンドで使用できるすべてのオプションについてほぼ説明しました。それでもオプションが不足していて、このリストに含めたい場合は、コメントボックスから更新してください。