stat
GNU coreutils
に含まれるコマンド パッケージは、ファイルサイズ、iノードの場所、アクセス許可とSELinuxコンテキスト、ファイルとファイルシステムに関する作成時間と変更時間など、さまざまなメタデータを提供します。これは、通常、取得するためにいくつかの異なるコマンドが必要な情報を収集するための便利な方法です。
Linuxへの統計のインストール
Linuxでは、おそらくすでにstat
があります コマンドは、通常、デフォルトでLinuxディストリビューションにバンドルされているコアユーティリティパッケージの一部であるため、インストールされています。
stat
がない場合 インストールすると、coreutils
をインストールできます パッケージマネージャーと一緒に。
または、ソースコードからcoreutilsをコンパイルすることもできます。
ファイルのステータスを取得する
stat
を実行しています 特定のファイルまたはディレクトリに関する読みやすい出力を提供します。
$ stat planets.xml
File: planets.xml
Size: 325 Blocks: 8 IO Block: 4096 regular file
Device: fd03h/64771d Inode: 140217 Links: 1
Access: (0664/-rw-rw-r--) Uid: (1000/tux) Gid: (100/users)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2021-08-17 18:26:57.281330711 +1200
Modify: 2021-08-17 18:26:58.738332799 +1200
Change: 2021-08-17 18:26:58.738332799 +1200
Birth: 2021-08-17 18:26:57.281330711 +1200
読みやすいかもしれませんが、それでも多くの情報があります。 stat
は次のとおりです カバーしています:
- ファイル :ファイル名
- サイズ :ファイルサイズ(バイト単位)
- ブロック :このファイル用に予約されているハードドライブ上のブロック数
- IOブロック :ファイルシステムのブロックのサイズ
- 通常のファイル :ファイルの種類(通常のファイル、ディレクトリ、ファイルシステム)
- デバイス :ファイルが配置されているデバイス
- iノード :ファイルが配置されているiノード番号
- リンク :ファイルへのリンクの数
- アクセス、UID、GID :ファイルのアクセス許可、ユーザー、およびグループの所有者
- コンテキスト :SELinuxコンテキスト
- アクセス、変更、変更、誕生 :ファイルがアクセス、変更、ステータスの変更、および作成されたときのタイムスタンプ
Terse出力
出力をよく知っている人、またはawkなどの他のユーティリティを使用して出力を解析したい人のために、--terse
があります。 (-t
略して)オプション。見出しや改行なしで出力をフォーマットします。
$ stat --terse planets.xml
planets.xml 325 8 81b4 100977 100 fd03 140217 1 0 0 1629181617 1629181618 1629181618 1629181617 4096 unconfined_u:object_r:user_home_t:s0
独自のフォーマットを選択する
--printf
を使用して、出力用に独自の形式を定義できます。 オプションとprintfに似た構文。 stat
によって報告された各属性 フォーマットシーケンス(%C
SELinuxコンテキストの場合、%n
ファイル名など)、レポートに表示する内容を選択できます。
$ stat --printf="%n\n%C\n" planets.xml
planets.xml
unconfined_u:object_r:user_home_t:s0
$ $ stat --printf="Name: %n\nModified: %y\n" planets.xml
Name: planets.xml
Modified: 2021-08-17 18:26:58.738332799 +1200
その他のLinuxリソース
- Linuxコマンドのチートシート
- 高度なLinuxコマンドのチートシート
- 無料のオンラインコース:RHELの技術概要
- Linuxネットワーキングのチートシート
- SELinuxチートシート
- Linuxの一般的なコマンドのチートシート
- Linuxコンテナとは何ですか?
- 最新のLinux記事
一般的なフォーマットシーケンスは次のとおりです。
- %a アクセス権
- %F ファイルタイプ
- %n ファイル名
- %U ユーザー名
- %u ユーザーID
- %g グループID
- %w 生年月日
- %y 変更時間
フォーマットシーケンスの完全なリストは、stat
にあります。 マニュアルページとcoreutils
情報ページ。
ファイル情報
ls -l
の出力を解析しようとしたことがある場合 、その後、stat
の柔軟性に感謝します 指図。 stat
のデフォルト情報のすべてのビットが常に必要なわけではありません を提供しますが、コマンドの一部またはすべてが必要な場合、このコマンドは非常に貴重です。出力をデフォルトの形式で読み取る場合でも、独自のクエリを作成する場合でも、stat
コマンドを使用すると、データに関するデータに簡単にアクセスできます。