5 przykładów poleceń „stat” dla początkujących użytkowników Linuksa
polecenie stat to przydatne narzędzie do przeglądania stanu plików lub systemu plików. Pobiera informacje, takie jak typ pliku; prawa dostępu w formacie ósemkowym i czytelnym dla człowieka; Ciąg kontekstowy bezpieczeństwa SELinux; czas narodzin pliku, ostatni dostęp, ostatnia modyfikacja danych, ostatnia zmiana statusu, zarówno czytelna dla człowieka, jak i w sekundach od Epoki, i wiele więcej.
Posiada opcję określenia niestandardowego formatu zamiast domyślnego do wyświetlania informacji. W tym przewodniku przyjrzymy się pięciu przykładom poleceń stat dla początkujących użytkowników Linuksa.
Sprawdź stan plików systemu Linux
1. Najłatwiejszym sposobem użycia stat jest podanie pliku jako argumentu. Poniższe polecenie wyświetli rozmiar, bloki, bloki IO, typ pliku, wartość i-węzła, liczbę dowiązań i wiele innych informacji o pliku /var/log/syslog, jak pokazano na zrzucie ekranu:
$ stat /var/log/syslog
File: '/var/log/syslog'
Size: 26572 Blocks: 56 IO Block: 4096 regular file
Device: 80ah/2058d Inode: 8129076 Links: 1
Access: (0640/-rw-r-----) Uid: ( 104/ syslog) Gid: ( 4/ adm)
Access: 2018-04-06 09:42:10.987615337 +0530
Modify: 2018-04-06 11:09:29.756650149 +0530
Change: 2018-04-06 11:09:29.756650149 +0530
Birth: -
Sprawdź stan systemu plików
2. W poprzednim przykładzie polecenie stat traktowało plik wejściowy jak zwykły plik, jednak aby wyświetlić status systemu plików zamiast statusu pliku, użyj opcji -f
.
$ stat -f /var/log/syslog
File: "/var/log/syslog"
ID: ce97e63d2201c974 Namelen: 255 Type: ext2/ext3
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 84769790 Free: 16012830 Available: 11700997
Inodes: Total: 21544960 Free: 20995459
Możesz także podać katalog/system plików jako argument, jak pokazano.
$ stat -f /
File: "/"
ID: ce97e63d2201c974 Namelen: 255 Type: ext2/ext3
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 84769790 Free: 16056471 Available: 11744638
Inodes: Total: 21544960 Free: 21005263
Włącz śledzenie dowiązań symbolicznych
3. Ponieważ Linux obsługuje łącza (symboliczne i dowiązania twarde), niektóre pliki mogą zawierać jedno lub więcej łączy lub mogą nawet istnieć w system plików.
Aby umożliwić statystykom podążanie za linkami, użyj flagi -L
, jak pokazano.
$ stat -L /
File: '/'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 80ah/2058d Inode: 2 Links: 25
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-04-09 10:55:55.119150525 +0530
Modify: 2018-02-20 11:15:54.462893167 +0530
Change: 2018-02-20 11:15:54.462893167 +0530
Birth: -
Użyj niestandardowego formatu do wyświetlania informacji
4. stat umożliwia także użycie określonego lub niestandardowego formatu zamiast domyślnego. Flaga -c
służy do określenia używanego formatu, wypisuje znak nowej linii po każdym użyciu sekwencji formatu.
Alternatywnie możesz użyć opcji --printf
, która umożliwia interpretację sekwencji ucieczki odwrotnego ukośnika i wyłącza drukowanie końcowego znaku nowej linii. Musisz użyć \n
w formacie, aby na przykład wydrukować nową linię.
stat --printf='%U\n%G\n%C\n%z\n' /var/log/secure
Znaczenie sekwencji formatów plików użytych w powyższym przykładzie:
- %U – nazwa użytkownika właściciela
- %G – nazwa grupy właściciela
- %C – ciąg znaków kontekstu bezpieczeństwa SELinux
- %z – czas ostatniej zmiany statusu, czytelny dla człowieka
5. Oto przykład pokazujący użycie akceptowanych sekwencji formatów w systemach plików.
stat --printf='%n\n%a\n%b\n' /
Znaczenie sekwencji formatów użytych w powyższym poleceniu.
- %n – pokazuje nazwę pliku
- %a – drukuj bezpłatne bloki dostępne dla osób niebędących superużytkownikami
- %b – wyświetla całkowitą liczbę bloków danych w systemie plików
Drukuj informacje w zwięzłej formie
6. Opcji -t
można użyć do wydrukowania informacji w zwięzłej formie.
$ stat -t /var/log/syslog
/var/log/syslog 12760 32 81a0 104 4 80a 8129076 1 0 0 1523251873 1523256421 1523256421 0 4096
Na koniec, Twoja powłoka może mieć własną wersję statystyk. Aby uzyskać szczegółowe informacje na temat obsługiwanych opcji, zapoznaj się z dokumentacją powłoki. Aby zobaczyć wszystkie akceptowane sekwencje formatów wyjściowych, odwołaj się do strony podręcznika stat.
man stat
W tym artykule wyjaśniliśmy pięć przykładów poleceń stat dla początkujących użytkowników Linuksa. Skorzystaj z poniższego formularza opinii, aby zadać pytania.