GNU/Linux >> Znalost Linux >  >> Linux

Zkontrolujte stav souboru v systému Linux pomocí příkazu stat

stat příkaz, který je součástí GNU coreutils poskytuje řadu metadat, včetně velikosti souboru, umístění inodu, přístupových oprávnění a kontextu SELinux a časů vytváření a úprav o souborech a souborových systémech. Je to pohodlný způsob shromažďování informací, k jejichž získání obvykle potřebujete několik různých příkazů.

Instalace statistik v systému Linux

V Linuxu již pravděpodobně máte stat příkaz nainstalován, protože je součástí základního balíčku nástrojů, který je obvykle standardně dodáván s distribucemi Linuxu.

V případě, že nemáte stat nainstalován, můžete nainstalovat coreutils s vaším správcem balíčků.

Případně můžete zkompilovat coreutils ze zdrojového kódu.

Zjištění stavu souboru

Spuštění stat poskytuje snadno čitelný výstup o konkrétním souboru nebo adresáři.

$ stat planets.xml 
  Soubor:planets.xml
  Velikost:325      Bloků:8     IO Blok:4096   běžný soubor
Zařízení:fd03h/64771d    Inode:140217 140217  Odkaz />Přístup:(0664/-rw-rw-r--)  Uid:(1000/tux)   Gid:(100/uživatelé)
Kontext:unconfined_u:object_r:user_home_t:s0
Přístup:2021 -08-17 18:26:57.281330711 +1200
Změnit:2021-08-17 18:26:58.738332799 +1200
Změnit:2021-08-17:569 19:538:00> Narození:2021-08-17 18:26:57.281330711 +1200

Možná se to snadno čte, ale i tak je to hodně informací. Zde je to, co stat pokrývá:

  • Soubor :název souboru
  • Velikost :velikost souboru v bajtech
  • Blokování :počet bloků na pevném disku vyhrazených pro tento soubor
  • Vstupní blok :velikost bloku souborového systému
  • běžný soubor :typ souboru (běžný soubor, adresář, souborový systém)
  • Zařízení :zařízení, kde se soubor nachází
  • Inode :číslo inodu, kde se soubor nachází
  • Odkazy :počet odkazů na soubor
  • Přístup, UID, GID :oprávnění k souboru, uživatel a vlastník skupiny
  • Kontext :Kontext SELinux
  • Přístup, úprava, změna, narození :časové razítko, kdy byl soubor otevřen, upraven, změněn stav a vytvořen

Stručný výstup

Pro lidi, kteří výstup dobře znají nebo chtějí výstup analyzovat pomocí jiných nástrojů, jako je awk, je tu --terse (-t zkráceně) možnost, která formátuje výstup bez nadpisů nebo zalomení řádků.

$ stat --terse planets.xml 
planets.xml 325 8 81b4 100977 100 fd03 140217 1 0 0 1629181617 1629181618 162918161816 162918161816:09

Výběr vlastního formátu

Můžete definovat svůj vlastní formát pro výstup pomocí --printf volba a syntaxe podobná printf. Každý atribut hlášený stat má sekvenci formátu (%C pro kontext SELinux %n pro název souboru atd.), takže si můžete vybrat, co chcete ve zprávě vidět.

$ stat --printf="%n\n%C\n" planets.xml 
planets.xml
unconfined_u:object_r:user_home_t:s0
$ $ stat --printf ="Název:%n\nUpraveno:%y\n" planets.xml
Název:planety.xml
Upraveno:2021-08-17 18:26:58.738332799 +1200

Další zdroje pro Linux

  • Cheat pro příkazy Linuxu
  • Cheat sheet pro pokročilé příkazy systému Linux
  • Bezplatný online kurz:Technický přehled RHEL
  • Síťový cheat pro Linux
  • Cheat sheet SELinux
  • Cheat pro běžné příkazy pro Linux
  • Co jsou kontejnery systému Linux?
  • Naše nejnovější články o Linuxu

Zde jsou některé běžné sekvence formátů:

  • %a přístupová práva
  • %F typ souboru
  • %n název souboru
  • %U uživatelské jméno
  • %u ID uživatele
  • %g ID skupiny
  • %w čas narození
  • %y čas úpravy

Úplný seznam formátovacích sekvencí je k dispozici v stat manuálová stránka a coreutils informační stránky.

Informace o souboru

Pokud jste se někdy pokusili analyzovat výstup ls -l , pak oceníte flexibilitu stat příkaz. Ne vždy potřebujete každý bit výchozích informací, které stat poskytuje, ale příkaz je neocenitelný, když jej potřebujete některé nebo všechny. Ať už čtete jeho výstup v jeho výchozím formátu, nebo vytváříte vlastní dotazy, stat vám poskytuje snadný přístup k datům o vašich datech.


Linux
  1. Zkontrolujte procesy Java v systému Linux pomocí příkazu jps

  2. Najděte soubory a adresáře v Linuxu pomocí příkazu find

  3. Zkopírujte a vložte na příkazový řádek Linuxu pomocí xclip

  1. Začínáme s příkazem tac systému Linux

  2. Základní příklady příkazu File v Linuxu

  3. Zkontrolujte oprávnění souborů Linux pomocí ls

  1. Jak zkontrolovat pravopis na příkazovém řádku Linuxu pomocí Aspell

  2. 8 Příklady příkazů Stat v Linuxu

  3. Třídit příkaz v Linuxu s příklady