Android

Příkaz Stat v Linuxu

Linux – administrace systému - 12 - Uživatelé

Linux – administrace systému - 12 - Uživatelé

Obsah:

Anonim

stat je obslužný program příkazového řádku, který zobrazuje podrobné informace o daných souborech nebo souborových systémech.

Tento článek vysvětluje, jak používat příkaz stat .

Pomocí příkazu stat

Syntaxe příkazu stat je následující:

stat… FILE…

stat přijímá jeden nebo více názvů vstupních FILE a obsahuje řadu možností, které řídí chování a výstup příkazu.

Podívejme se na následující příklad:

stat file.txt

Výstup bude vypadat asi takto:

File: file.txt Size: 4030 Blocks: 8 IO Block: 4096 regular file Device: 801h/2049d Inode: 13633379 Links: 1 Access: (0644/-rw-r--r--) Uid: (1000/ linuxize) Gid: (1000/ linuxize) Access: 2019-11-06 09:52:17.991979701 +0100 Modify: 2019-11-06 09:52:17.971979713 +0100 Change: 2019-11-06 09:52:17.971979713 +0100 Birth: -

Při vyvolání bez jakýchkoli voleb se zobrazí následující informace o souboru:

  • Soubor - Název souboru. Velikost - Velikost souboru v bytech. Bloky - Počet přidělených bloků, které soubor zabírá. Blok - Velikost v bajtech každého bloku. Typ souboru - (např. Normální soubor, adresář, symbolický odkaz…) Zařízení - číslo zařízení v hex a desetinné čárce.Inode - Inode number.Links - Počet pevných odkazů.Access - Oprávnění k souborům v numerických a symbolických metodách. ID a jméno vlastníka.Kontext - bezpečnostní kontext SELinuxu. Přístup - naposledy, kdy byl soubor přístupný.Modify - naposledy, kdy byl obsah souboru změněn.Změnit - naposledy, kdy byl změněn atribut nebo obsah souboru. Čas vytvoření souboru (není podporován v systému Linux).

Zobrazení informací o systému souborů

Chcete-li získat informace o systému souborů, kde se daný soubor nachází, namísto informací o samotném souboru použijte volbu -f , ( --file-system ):

stat -f file.txt

Výstup příkazu bude vypadat takto:

File: "package.json" ID: 8eb53097b4494d20 Namelen: 255 Type: ext2/ext3 Block size: 4096 Fundamental block size: 4096 Blocks: Total: 61271111 Free: 25395668 Available: 22265851 Inodes: Total: 15630336 Free: 13979610

Při vyvolání stat s volbou -f se zobrazí následující informace:

  • Soubor - Název souboru.ID - ID systému souborů v hex.Namelen - Maximální délka názvů souborů.Fundamental size size - Velikost každého bloku v systému souborů.Blocks:
    • Celkem - Počet celkových bloků v systému souborů.Free - Počet volných bloků v systému souborů. Dostupné - Počet volných bloků dostupných uživatelům bez oprávnění root.
    Inody:
    • Celkem - Počet celkových inodů v systému souborů.Free - Počet volných inodů v systému souborů.

Dereference (Follow) Symlinks

Ve výchozím stat nesleduje symbolický odkaz. Pokud spustíte příkaz na symbolu, bude výstup obsahovat informace o symbolu, nikoli soubor, na který odkazuje:

stat /etc/resolv.conf

File: /etc/resolv.conf ->../run/systemd/resolve/stub-resolv.conf Size: 39 Blocks: 0 IO Block: 4096 symbolic link Device: 801h/2049d Inode: 8126659 Links: 1 Access: (0777/lrwxrwxrwx) Uid: (0/ root) Gid: (0/ root) Access: 2019-11-06 21:12:26.875956073 +0100 Modify: 2018-07-24 11:11:48.128794519 +0200 Change: 2018-07-24 11:11:48.128794519 +0200 Birth: -

Chcete-li ukončit (sledovat) symbolický odkaz a zobrazit informace o souboru, na který tento odkaz odkazuje, použijte volbu -L , ( --dereference ):

stat -L /etc/resolv.conf

File: /etc/resolv.conf Size: 715 Blocks: 8 IO Block: 4096 regular file Device: 17h/23d Inode: 989 Links: 1 Access: (0644/-rw-r--r--) Uid: (101/systemd-resolve) Gid: (103/systemd-resolve) Access: 2019-11-06 20:35:25.603689619 +0100 Modify: 2019-11-06 20:35:25.555689733 +0100 Change: 2019-11-06 20:35:25.555689733 +0100 Birth: -

Přizpůsobení výstupu

Příkaz stat má dvě možnosti, které vám umožňují přizpůsobit výstup podle vašich potřeb: -c , ( --format="format" ) a --printf="format" .

Rozdíl mezi těmito dvěma možnostmi spočívá v tom, že pokud jsou dva nebo více souborů použity jako operátoři - --format automaticky přidá nový řádek po každém výstupu operandu. --printf interpretuje --printf lomítko.

Existuje mnoho směrnic pro formátování souborů a systémů souborů, které lze použít s --format a --printf .

Chcete-li například zobrazit pouze typ souboru, který byste použili:

stat --format="%F" /dev/null

character special file

Můžete kombinovat libovolný počet direktiv formátování a mezi nimi případně použít vlastní oddělovače. Oddělovač může být jeden znak nebo řetězec:

stat --format="%n, %F" /dev/null

/dev/null, character special file

Chcete-li interpretovat speciální znaky, jako je nový řádek nebo karta, použijte volbu --printf :

stat --printf='Name: %n\nPermissions: %a\n' /etc

vytiskne nový řádek:

Name: /etc Permissions: 755

stat může také zobrazovat informace v napjaté podobě. Tento formát je užitečný pro analýzu jinými nástroji.

--terse příkaz s volbou -t ( --terse ) a vytiskněte výstup v těsné podobě:

stat -t /etc

/etc 12288 24 41ed 0 0 801 8126465 147 0 0 1573068933 1573068927 1573068927 0 4096

Úplný seznam všech směrnic pro formátování souborů a souborových systémů zadejte do terminálu stat --help man stat nebo stat --help .

Závěr

Příkaz stat vytiskne informace o daných souborech a souborových systémech.

V Linuxu existuje několik dalších příkazů, které mohou zobrazovat informace o daných souborech, přičemž ls je nejpoužívanější, ale zobrazuje pouze část informací poskytnutých příkazem stat .

stat terminál