アンドロイド

Linux touchコマンド

George Hotz | Programming | From the Transistor: Exploring Xilinx on MAC ( O S A K A ) | Part1

George Hotz | Programming | From the Transistor: Exploring Xilinx on MAC ( O S A K A ) | Part1

目次:

Anonim

touchコマンドを使用すると、既存のファイルとディレクトリのタイムスタンプを更新したり、新しい空のファイルを作成したりできます。

このガイドでは、最も一般的なコマンドオプションの実用的な例と詳細な説明を通して、タッチコマンドの使用方法を示します。

Linuxファイルのタイムスタンプ

touchコマンドの使用方法に入る前に、Linuxでファイルのタイムスタンプを確認することから始めましょう。

Linuxのファイルには3つのタイムスタンプがあります。

  • atime(アクセス時刻)-ファイルがcat、vim、grep.mtimeなどのコマンドまたはアプリケーションによって最後にアクセス/開かれた時刻(変更時刻)-ファイルのコンテンツが最後に変更された時刻ctime(変更時刻)-ファイルの属性またはコンテンツが最後に変更されたとき。 属性には、ファイル許可、ファイル所有権、またはファイルの場所が含まれます。

タイムスタンプを含むファイルの状態を表示するには、 stat コマンドを使用します。

stat file_name

新しいファイルを作成するには、親ディレクトリに対する書き込み権限が必要です。 それ以外の場合、許可拒否エラーが表示されます。

touchコマンドの使用方法

オプションなしで使用する場合の最も単純な形式では、引数として指定されたファイル名が存在しない場合、touchは新しいファイルを作成します。

ファイルが既に存在する場合、touchはファイルの最終アクセス時刻と変更時刻を現在の時刻に変更します。

たとえば、ファイル file1 が存在しない場合は、次のコマンドがファイルを作成します。存在しない場合は、タイムスタンプを変更します。

touch file1

複数のファイルを一度に作成または変更するには、ファイル名を引数として指定します。

touch file1 file2 file3

たとえば、ファイル file1 が存在する場合、次のコマンドはファイルのタイムスタンプを変更しますが、そうでない場合は何もしません。

touch -c file1

アクセス時間または変更時間のみを変更する

デフォルトでは、オプションが使用されていない場合、touchはファイルの最終アクセス時刻と変更時刻を現在の時刻に更新します。 -a および -m オプションを使用すると、これらのタイムスタンプの1つのみを変更できます。

アクセス時間のみを変更する

-a オプションを使用して、ファイルのアクセス時間のみを変更します。

touch -a file1

変更時間のみを変更する

-m オプションを使用して、ファイルの変更時間を変更します。

touch -m file1

変更時刻を変更すると、変更時刻も更新されます。

特定のタイムスタンプの設定

touchコマンドを使用すると、現在の時刻以外の特定の時刻でファイルを更新または作成することもできます。

-d (--date --date= )オプションを使用して、日付文字列を指定し、現在の時刻の代わりにそれを使用します。

たとえば、 file1 最終アクセス時刻と変更時刻の両方を2018年6月1日11:02に変更するには、次のコマンドを使用します。

touch -d '1 June 2018 11:02' file1

日付文字列は一重引用符で囲む必要があります。

また、部分的な日付/時刻文字列をtouchコマンドに提供することもできます。 日付のみを指定すると、年が現在の年に自動的に変更されます。

touch -d '12 June' file1

-t オプションを使用してタイムスタンプを指定し、現在の時刻の代わりにそれを使用します。 タイムスタンプ引数は次の形式である必要があります。

use YY]MMDDhhmm

たとえば、次のコマンドは、 file1 最終アクセス時刻と変更時刻を現在の年の6月11:02に設定します。

touch -t 12061102 file1

別のファイルのタイムスタンプを使用する

-r (-- --reference= )オプションを使用すると、参照ファイルを指定し、現在の時刻の代わりにそのタイムスタンプを使用できます。

たとえば、次のコマンドは、touchに file2 file1 の時間を使用するように指示します。

touch -r file1 file2

シンボリックリンクタイムスタンプの変更

デフォルトでは、シンボリックリンクでタッチコマンドを使用すると、参照ファイルのタイムスタンプが変更されます。

-h (-- --no-dereference )を使用して、シンボリックリンクのタイムスタンプを変更します。

たとえば、シンボリックリンク symlink1 タイムスタンプを変更するには、次を使用します。

touch -h symlink1

結論

これで、Linux touchコマンドの使用方法を十分に理解できたはずです。

タッチ端末