GNU/Linux >> Linux の 問題 >  >> Linux

Unix Stat コマンド:ファイル属性を識別する方法

質問: 利用可能なすべてのファイル属性を確認するにはどうすればよいですか?つまり、ファイルやディレクトリについて、ls -l コマンドで表示される内容よりも詳しい情報を知りたい.

答え: Unix ではすべてがファイルとして扱われます。これには、デバイス、ディレクトリ、およびソケットが含まれます。これらはすべてファイルです。 統計コマンド この記事で説明されているように、ファイルまたはファイルシステムのステータスを表示します。

File Stat – ファイルに関する情報を表示

たとえば、101hacks.txt ファイルに関する詳細情報を確認するには、stat コマンドを実行します。 以下に示すように。

$ stat 101hacks.txt
  File: `/home/sathiyamoorthy/101hacks.txt'
  Size: 854       	Blocks: 8          IO Block: 4096   regular file
Device: 801h/2049d	Inode: 1058122     Links: 1
Access: (0600/-rw-------)  Uid: ( 1000/ sathiya)   Gid: ( 1000/ sathiya)
Access: 2009-06-28 19:29:57.000000000 +0530
Modify: 2009-06-28 19:29:57.000000000 +0530
Change: 2009-06-28 19:29:57.000000000 +0530

Linux Stat コマンド出力の詳細

  • ファイル :`/home/sathiyamoorthy/101hacks.txt’ – ファイルの絶対パス名.
  • サイズ :854 – ファイル サイズ (バイト単位)。
  • ブロック :8 – このファイルで使用されるブロックの総数。
  • IO ブロック :4096 – このファイルの IO ブロック サイズ。
  • 通常のファイル – ファイルの種類を示します。これは、これが通常のファイルであることを示しています。利用可能なファイルの種類は次のとおりです。
    • 通常のファイル。 (例:すべての通常のファイル)
    • ディレクトリ。 (例:ディレクトリ)
    • ソケット。 (例:ソケット)
    • シンボリック リンク。 (例:シンボリック リンク)
    • 特殊ファイル (例:ハードディスク) をブロックします。
    • 文字の特殊ファイル。 (例:端末デバイス ファイル)。
  • デバイス :801h/2049d – 16 進数のデバイス番号と 10 進数のデバイス番号
  • I ノード :1058122 – inode 番号は、ファイル システムによる内部メンテナンスに使用される各ファイルの一意の番号です。
  • リンク :1 – ファイルへのリンク数
  • アクセス :(0600/-rw——-):8 進数と文字形式の両方で表示されるアクセス指定子。両方の形式についての説明を見てみましょう。
  • ウイド :( 1000/sathiya) – ファイル所有者のユーザー ID とユーザー名が表示されます。
  • ジッド :( 1000/sathiya) – ファイル所有者のグループ ID とグループ名が表示されます。
  • アクセス :2009-06-28 19:29:57.000000000 +0530 – ファイルの最終アクセス時間。
  • 変更 :2009-06-28 19:29:57.000000000 +0530 – ファイルの最終更新時刻。
  • 変更 :2009-06-28 19:29:57.000000000 +0530 – そのファイルの inode データの最終変更時刻。

Dir Stat – ディレクトリに関する情報を表示

以下に示すように、同じコマンドを使用してディレクトリに関する情報を表示できます。

$ stat /home/ramesh
File: `/home/ramesh'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 803h/2051d Inode: 5521409 Links: 7
Access: (0755/drwxr-xr-x) Uid: ( 401/ramesh) Gid: ( 401/ramesh)
Access: 2009-01-01 12:17:42.000000000 -0800
Modify: 2009-01-01 12:07:33.000000000 -0800
Change: 2009-01-09 12:07:33.000000000 -0800

ファイル許可の詳細:

8 進形式のファイル許可

ファイルに関するこの情報は、stat コマンドを実行すると、[アクセス] フィールドに表示されます。以下は、Unix での読み取り、書き込み、および実行許可の値です。

  • 値の意味
  • 4 読み取り許可
  • 2 書き込み許可
  • 1 実行権限

文字形式のファイル許可

ファイルに関するこの情報は、stat コマンドを実行すると、アクセス フィールドに表示されます。

  • ファイル タイプ: フィールドの最初のビットは、ファイルの種類を示しています。
  • ユーザー権限: 2 番目、3 番目、4 番目の文字は、ユーザーの読み取り、書き込み、および実行権限を指定します。
  • グループ権限: 5 番目、6 番目、7 番目の文字は、グループの読み取り、書き込み、および実行権限を指定します。
  • その他の許可: 8 番目、9 番目、10 番目の文字は、その他の読み取り、書き込み、および実行の許可を指定します。

ファイル システムに関する情報の表示

以下に示すように、stat コマンドを使用してファイル システム情報を表示することもできます。

$ stat -f /
  File: "/"
    ID: 0        Namelen: 255     Type: ext2/ext3
Blocks: Total: 2579457    Free: 1991450    Available: 1860421    Size: 4096
Inodes: Total: 1310720    Free: 1215875

Linux
  1. Linuxでコマンド出力をファイルに保存する方法

  2. ファイルのサブセットをランダムにサンプリングする方法は?

  3. Unix で ls コマンドからファイル サイズ/詳細を表示する方法

  1. chmodを使用してファイルのパーミッションを変更するにはどうすればよいですか?

  2. Unix のトップ コマンド出力を読み取り可能な形式でファイルにキャプチャする方法

  3. UNIX/Linux での tail コマンドの例

  1. Linuxファイルコマンド:Linuxでファイルタイプを決定する方法

  2. Linuxでの8つのStatコマンドの例

  3. stat コマンドはファイルのブロックをどのように計算しますか?