logo

Linux/Unix の Touch コマンドと例

touch コマンドは空のファイルを作成する方法です (他にもいくつかの方法があります)。 touch コマンドを使用して、各ファイルの変更とアクセス時刻を更新できます。

ReactOS、Unix、TSC の FLEX、Unix 系オペレーティング システム、Microware OS-9 シェル、AROS シェル、および Digital Research/Novell DR DOS で利用できます。また、このコマンドは Microsoft Windows および FreeDOS でも使用できます。

  • これは、デフォルトの使用法でファイルの内容を通知せずにファイルを開いたり作成したり保存したりするのと同じです。
  • touch コマンドは、ファイルのクローズ、保存、オープンを無視します。むしろ、ディレクトリまたはファイルに関連する日付を更新します。
  • 更新された変更日やアクセス日は、バックアップ ユーティリティやコマンド ライン インターフェイス プログラミング ユーティリティなどの他のさまざまなプログラムにとって重要になる場合があります。
  • これらのプログラムは通常、プログラムが最後に実行された後に変更または作成されたファイルのみに焦点を当てます。
  • また、touch コマンドは、プログラムを正常に動作させるために特定の名前のファイルを必要とするが、ファイルに特定のコンテンツを含める必要がないスクリプトまたはプログラム用のファイルを迅速に作成するのに役立ちます。

SUS (Single Unix 仕様) では、touch コマンドでファイルの変更時間、アクセス時間、またはその両方を変更する必要があると定義されています。ファイルは、1 つの引数としてインポートされたパス名によって認識されます。また、認識されたファイルが存在しない場合、ファイルが作成され、変更とアクセス時間が指定どおりに固定されることを表します。新しいタイムスタンプが指定されていない場合、touch コマンドは現在の時刻を適用します。

タッチの簡単な歴史

まず、タッチ ユーティリティはバージョン 7 AT&T UNIX で発生しました。このコマンドは現在、さまざまな Unix、DOS、Unix 系システム、クラシックな Mac OS、Microsoft Windows など、いくつかの異なる OS で利用できます。 GNU coreutils にグループ化された touch のリリースは、Paul Rubin、Randy Smith、David MacKenzie、Jim Kingdon、および Arnold Robbins によって指定されました。

Microsoft Windows の場合、このコマンドは、GNU Unix 風のユーティリティのネイティブ Win32 ポート UnxUtils コレクションの一部として分離されたパッケージです。 FreeDOS エディションは GPL に基づいてライセンスされており、Kris Heidenstrom によって統合されました。 KolibriiOS および DR DOS 6.0 には、touch コマンドの実装が追加されています。また、touch コマンドが IBM i OS に同梱されています。

Ubuntu でのタッチの動作

touch は、空のファイルを作成したり、ファイルのタイムスタンプ (ファイルのアクセス時刻、最終日付、または変更) を変更したりするための一般的な Linux コマンドです。

Javaで現在の日付を取得する

タイムスタンプ

Linux ファイルには、ctime、mtime、atime の 3 つのタイムスタンプが含まれています。これらのタイムスタンプについては以下で説明します。

    時間:これには、head、grep、cat、vim、vi、nano、less などのファイルの内容を表示するコマンドまたはツールを使用してファイルの内容が読み取られたときの詳細が含まれます。 atime タイムスタンプは変更され、毎回更新されます。にチェックが入っています。時間:ファイルの名前など、ファイルの内容の最終変更が表示されますが、ファイル自体のみが表示され、そのアクセス許可や所有者は表示されません。時間:また、ctime はファイルがいつ変更されたかを表しますが、ファイルの権限、グループ、または所有権のアクセスが変更された場合にも更新されます。 mtime と atime は編集できますが、ctime は変更できません。ファイルのアクセス許可が変更された場合、またはファイルが変更または読み取られた場合、時刻は更新されます。

構文:

 touch 

例:

 touch myfile1 

タッチコマンド

上を見てください。touch コマンドによって 'myfile1' と 'myfile2' という 2 つのファイルが作成されました。複数のファイルを作成するには、シングルタッチコマンドに続いて Enter キーを押してすべてのファイル名を入力するだけです。たとえば、「myfile1」と「myfile2」を同時に作成したい場合、コマンドは次のようになります。

 touch myfile1 myfile2 

タッチオプション

オプション関数
タッチ -a ファイルのアクセスと変更時刻を変更します。
タッチ -m ファイルの時刻を変更するためにのみ使用されます。
タッチ -r 一方のファイルを参照して、他方のファイルの時刻を更新します。
タッチ -t 時刻を指定してファイルを作成します。
タッチ -c 空のファイルは作成されません。
-d=、--date=このオプションは、日付文字列を使用してタイムスタンプを変更するために使用されます。
-h、--逆参照なしシンボリック リンクのタイムスタンプを変更します。
-f 効果はありません。このオプションは古い BSD での変更を強制します。
--バージョン、-vプログラムのバージョンを表示します。
- ヘルプヘルプメニューを表示します。

Linux touch -a コマンド

touch コマンドとオプション 'a' は、ファイルのアクセス時間を変更するために使用されます。デフォルトでは、システムの現在の時刻が取得されます。

構文:

 touch -a 

例:

 touch -a usr 

ファイルのアクセス時間と変更時間を確認するには、次を使用する必要があります。 ステータス 指示。

バイトから文字列へのPython
TOUCH -a コマンド

上記のスナップショットでは、ディレクトリ (usr) のステータスをチェックするためだけに「stat」コマンド (後のチュートリアルで学習します) を使用しました。ですから、混同しないでください。これで、コマンド「touch -a usr」を渡す前後のディレクトリ (usr) のアクセス時間を一致させることができます。システムのデフォルトのアクセス時間がかかりました。

ピート・デビッドソン

Linux touch -m コマンド

touch '-m' オプションを使用すると、ファイルの変更時刻のみを変更できます。

構文:

 touch -m 

例:

 touch -m usr 
タッチコマンド

上記のスナップショットでは、変更時間のみが変更されていることに注意してください。

Linux touch -r オプション

このコマンドは、前述の他のコマンドを参照して時刻を更新します。このコマンドを使用するには 2 つの方法があります。どちらも同じように機能します。

以下の例では、タイムスタンプを変更したいと考えています。 「デモ.txt」 参照すると 「デモ.txt」 。まず次のように書くことができます。

 touch -r demo.txt Demo.txt 

または

 touch Demo.txt -r demo.txt 

まず、touch コマンドを使用する前に、両方のファイルのステータスを確認します。

Javaの更新
タッチコマンド

さて、使用後は touch -r デモ.txt デモ.txt コマンド、時間 デモ.txt の時点を参照して変更されました デモ.txt

タッチコマンド

Linux touch -t コマンド

このコマンドを使用すると、ファイルへの指定時間を決定することで、ファイルのアクセス時間を変更できます。

デフォルトの時間ではなく、指定された時間によって時間を変更します。

時間の形式は次のようになります。

 touch -t YYYYMMDDhhmm.ss 

以下のスクリーンショットは、touch コマンドを実行する前のファイル 2.webp のステータスを示しています。

TOUCH -t コマンド

このスクリーンショットは、ファイル 2.webp の時間が指定した時間によって変更されたことを示しています。

タッチコマンド

Linux touch -c コマンド

touch コマンドで「c」オプションを使用しても、空のファイルが存在しない場合は作成されません。

ソートされたJavaのリスト

構文:

 touch -c 

例:

 touch -c movie 

タッチコマンド

上の図では、ファイル「movie」を作成したかったのですが、「c」オプションではファイルが作成されていません。

特定のタイムスタンプを設定する

touch コマンドを使用して、ファイルの特定のタイムスタンプを修正できます。例えば:

 touch -t 

タイムスタンプ形式は特定のパターンに従います。

 [[CC]YY]MMDDhhmm[.ss] 

どこ、

    CC:これらは年の最初の 2 桁です。YY:これらは年の最後の 2 桁です。んん:月を示しています。DD:それはその日を示しています。ふーん:時間を示します。んん:議事録を表示します。ss:秒を表示します。

ファイルのタイムスタンプをデータ文字列で設定する

-d フラグを指定して touch コマンドを使用すると、日付文字列でタイムスタンプを設定できます。その構文は次のとおりです。

 touch -d 

日付文字列は調整可能な時間形式であり、人間が判読できるテキスト形式をいくつか使用できます。いくつかの例を次に示します。

  • カレンダーの日付 (例: 2020 年 8 月 19 日)。
  • 時刻 (例: 午後 9 時 28 分、午前 7 時 3 分)。
  • 曜日 (例: 火曜日、水曜日など)
  • 相対時間 (例: 8 年前、次の水曜日、昨日など)。