5 'stat' kommandoeksempler for Linux-nybegynnere
stat-kommando er et nyttig verktøy for å vise fil- eller filsystemstatus. Den henter informasjon som filtype; tilgangsrettigheter i oktal og menneskelig lesbar; SELinux sikkerhetskontekststreng; tidspunkt for filfødsel, siste tilgang, siste dataendring, siste statusendring i både lesbar og i sekunder siden Epoch, og mye mer.
Den har en mulighet til å spesifisere et tilpasset format i stedet for standard, for å vise informasjon. I denne veiledningen vil vi se på fem stat-kommandoer for Linux-nybegynnere.
Sjekk Linux-filstatus
1. Den enkleste måten å bruke stat på er å gi den en fil som et argument. Følgende kommando vil vise størrelse, blokker, IO-blokker, filtype, inodeverdi, antall lenker og mye mer informasjon om filen /var/log/syslog, som vist på skjermbildet:
$ 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: -
Sjekk filsystemstatus
2. I forrige eksempel behandlet kommandoen stat inngangsfilen som en vanlig fil, men for å vise filsystemstatus i stedet for filstatus, bruk -f
-alternativet.
$ 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
Du kan også oppgi en katalog/filsystem som argument som vist.
$ 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
Aktiver følging av symbolske lenker
3. Siden Linux støtter koblinger (symbolske og harde lenker), kan enkelte filer ha én eller flere koblinger, eller de kan til og med eksistere i en filsystem.
For å la stat følge lenker, bruk -L
-flagget som vist.
$ 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: -
Bruk et tilpasset format for å vise informasjon
4. stat lar deg også bruke et bestemt eller tilpasset format i stedet for standardformatet. -c
-flagget brukes til å spesifisere formatet som brukes, det skriver ut en ny linje etter hver bruk av formatsekvensen.
Alternativt kan du bruke --printf
-alternativet som muliggjør tolkning av omvendt skråstrek-escape-sekvenser og slår av utskrift av en etterfølgende nylinje. Du må bruke \n
i formatet for å skrive ut en ny linje, for eksempel.
stat --printf='%U\n%G\n%C\n%z\n' /var/log/secure
Betydningen av formatsekvensene for filer brukt i eksemplet ovenfor:
- %U – brukernavn på eier
- %G – gruppenavn på eier
- %C – SELinux sikkerhetskontekststreng
- %z – tidspunkt for siste statusendring, lesbar for mennesker
5. Her er et eksempel som viser bruk av aksepterte formatsekvenser for filsystemer.
stat --printf='%n\n%a\n%b\n' /
Betydningen av formatsekvensene som brukes i kommandoen ovenfor.
- %n – viser filnavnet
- %a – skriv ut gratis blokker tilgjengelig for ikke-superbrukere
- %b – gir ut totale datablokker i filsystemet
Skriv ut informasjon i Terse-form
6. Alternativet -t
kan brukes til å skrive ut informasjonen i kortere form.
$ stat -t /var/log/syslog
/var/log/syslog 12760 32 81a0 104 4 80a 8129076 1 0 0 1523251873 1523256421 1523256421 0 4096
Som en siste merknad kan skallet ditt ha sin egen versjon av stat, vennligst se skallets dokumentasjon for detaljer om alternativene det støtter. For å se alle aksepterte utdataformatsekvenser, se stat man-siden.
man stat
I denne artikkelen har vi forklart fem stat-kommandoer for Linux-nybegynnere. Bruk tilbakemeldingsskjemaet nedenfor for å stille spørsmål.