Příkaz stat zobrazuje informace o souboru nebo systému souborů. Pomocí příkazu stat můžete získat informace, jako je velikost souboru, jeho oprávnění, ID skupiny a uživatele, kteří mají přístup, a datum a čas, kdy byl soubor vytvořen. Další vlastností příkazu stat je, že může také poskytnout informace o systému souborů. Když chceme znát informace o souboru, měli bychom použít tento nástroj. V tomto blogu se tedy seznámíte s příkazem Stat v Linuxu s vhodnými příklady.
Příkaz Stat v Linuxu
Příkaz Stat je užitečný, když chcete vědět vše o konkrétním souboru. Níže je uvedena základní syntaxe pro použití stat:
stat --options filenames
Zde je seznam informací, které získáme po provedení příkazu stat v Linuxu:
Jméno | Popis |
Soubor | Představuje název poskytnutého souboru. |
Typ souboru | Představuje typ souboru, např. speciální soubory, adresáře, běžné soubory nebo symbolické odkazy atd. |
ID | Zobrazuje ID systému souborů v hexadecimálním formátu. |
Narození | Zobrazuje čas, kdy byl soubor vytvořen. |
Velikost | Zobrazuje velikost konkrétního souboru (v bajtech) |
Zařízení | Zobrazuje číslo zařízení (v hexadecimálním formátu) |
Blokování | Zobrazuje celkový počet bloků pevného disku použitých k uložení souboru. |
Vstupní blok | Velikost každého přiděleného bloku (v bajtech) |
Upravit | Zobrazuje podrobnosti týkající se poslední úpravy. |
Kontext | Ukazuje uložený kontext zabezpečení SELinux. |
Inode | Zobrazuje číslo Inode souboru. |
Změnit | Zobrazuje informace o čase, kdy byl atribut nebo obsah souboru naposledy změněn. |
Přístup | Představuje všechna přístupová oprávnění (v numerických a symbolických metodách) |
Odkazy | Zobrazuje celkový počet pevných odkazů na soubor. |
Užitečný příklad příkazu Stat v Linuxu
Nyní vysvětlíme různé příklady a použití příkazu stat v Linuxu. V příkladu použijeme soubor Pyload.txt, který se nachází v adresáři Documents.
1. Zobrazit informace o souborovém systému
Příkaz Stat poskytuje stručné informace o souboru, ale pokud chcete místo souboru vidět informace o systému souborů, použijte volbu -f.
stat -f Pyload.txt--
Pokud ve statistice nepoužijete volbu -f, dostanete výsledek takto:
stat Pyload.txt
K vytištění všech informací ve stručném formátu můžete použít volbu -t. Zde je tedy příkaz pro stručnou formu:
stat -t ~/Documents/Pyload.txt
2. Dereference symbolických odkazů
Použijte volbu -L, (–dereference) k dereferencování symbolického odkazu a zobrazení informací o souboru, na který odkazuje:
stat -L ~/Documents/Pyload.txt
Ve výchozím nastavení se příkaz stat v Linuxu neřídí symbolickými odkazy. Pokud příkaz spustíte na symbolickém odkazu, získáte informace o symbolickém odkazu, nikoli o souboru, na který odkazuje:
stat ~/Documents/Pyload.txt
3. Příkaz Stat pro více souborů
K získání informací o více souborech můžete použít příkaz stat. Zde používáme následující příkaz k získání informací o souborech Pyload.txt a Ubuntupit.tar.
stat Pyload.txt Ubuntupit.tar
4. Přizpůsobte výstup příkazu Stat
Příkaz stat nabízí dvě různé možnosti přizpůsobení výstupu podle vašich požadavků, a tyto možnosti jsou:
-c, (–format=”formát”)
–printf="formát".
Hlavní rozdíl mezi výše uvedenými možnostmi je v tom, že --format
automaticky přidá nový řádek za každý výstup operandu, když jako operanty použijete dva nebo více souborů.
stat --format='%n' ~/Documents/Pyload.txt
stat --format='%n'\n ~/Documents/Pyload.txt
Pomocí tohoto příkazu můžete zobrazit pouze typ souboru:
stat --format="%F" ~/Documents/Pyload.txt
Použití vlastních oddělovačů mezi formátovacími direktivami umožňuje kombinovat libovolný počet formátovacích direktiv. Například:
stat --format="%n,%F" ~/Documents/Pyload.txt
Pro interpretaci speciálních znaků, jako je nový řádek nebo tabulátor, použijte volbu –printf:
stat --printf='Name: %n\nPermissions: %a\n' ~/Documents/Pyload.txt
Pro získání konkrétních výsledků můžete použít níže uvedený příkaz:
stat --printf='%U\n%G\n%C\n%z\n' ~/Documents/Pyload.txt
Zde:
- %U :Zobrazuje uživatelské jméno vlastníka
- %G :Zobrazuje název skupiny vlastníka
- %C: Zobrazuje kontextový řetězec zabezpečení SELinux
- %z :Zobrazuje čas, kdy došlo k posledním změnám (ve formátu čitelném pro člověka).
Pomocí níže uvedeného příkazu systém zobrazí různé sekvence formátů pro systém souborů:
stat --printf='%n\n%a\n%b\n' ~/Documents/Pyload.txt
- %n: Zobrazuje název souboru
- %a: Vytiskne volné bloky, které jsou k dispozici uživatelům, kteří nejsou superuživateli
- %b: Zobrazuje celkový počet bloků dat v systému souborů
Chcete-li získat úplný seznam direktiv formátu, proveďte níže uvedený příkaz:
man stat
Konečně, statistiky
Pomocí příkazu stat můžete vytisknout informace o souborech a systémech souborů. Někdy funguje jako náhrada Statu, protože také zobrazuje informace o daných souborech. Pokud tedy chcete získat více informací o příkazu ls, navštivte naše oficiální webové stránky.