stat Overzicht
`stat`-commando toont niet de inhoud van een bestand of directory zelf, maar de metadata die het bestandssysteem opslaat om dat object te beheren. Dit biedt veel gedetailleerdere informatie dan `ls -l`, zoals het tijdstip van aanmaak, laatste wijziging, en toegangspatronen, wat nuttig is bij het analyseren van de wijzigingsgeschiedenis of toegangspatronen van bestanden.
Belangrijkste Rol van stat
`stat`-commando wordt voornamelijk gebruikt voor de volgende doeleinden:
Belangrijkste Toepassingsgebieden
- **Bestandseigenschappen Controleren**: Controleert nauwkeurig de eigendom, rechten, grootte, enzovoort van bestanden.
- **Timestamps Analyseren**: Controleert verschillende tijdsinformatie zoals aanmaak-, laatste wijziging- en laatste toegangstijden om de wijzigingsgeschiedenis van bestanden te volgen.
- **Informatie over Symbolische Links**: Controleert zowel het doelpad van een symbolische link als de informatie van de link zelf.
- **Bestandssysteem Debuggen**: Diagnosticeert problemen in het bestandssysteem via schijfgebruik, bloktoewijzing, inode-informatie, enzovoort.
Inzicht in stat Uitvoerinformatie
`stat`-commando's uitvoer bestaat uit verschillende items. Het is belangrijk om de betekenis van elk item te begrijpen.
Belangrijkste Uitvoeritems
- File: De naam van het doelbestand of de directory.
- Size: De grootte van het bestand (bytes). Voor directories wordt dit meestal weergegeven als 4096 bytes.
- Blocks: Het aantal 512-byte blokken dat het bestand op de schijf in beslag neemt.
- IO Block: De efficiënte blokgrootte voor I/O-bewerkingen voor het bestand.
- Type: Geeft het type van het bestand aan. Bijvoorbeeld: regulier bestand, directory, symbolische link, enzovoort.
- Device: De ID (major:minor) van het apparaat waar het bestand zich bevindt.
- Inode: Het unieke identificatienummer van het bestand binnen het bestandssysteem, het inode-nummer. Hardlinks delen hetzelfde inode.
- Links: Het aantal hardlinks naar dat bestand.
- Access: De rechten van het bestand (octaal en rwx-formaat).
- Uid / Gid: De eigenaar (User ID) en groep (Group ID) van het bestand, inclusief de bijbehorende namen.
- Access / Modify / Change: `Access`: laatste toegangstijd (atime), `Modify`: laatste wijzigingstijd (mtime), `Change`: laatste wijzigingstijd (ctime). 'Birth' is de aanmaaktijd (crtime) en wordt mogelijk niet door alle bestandssystemen ondersteund.
Belangrijkste stat Commando Opties
`stat`-commando biedt verschillende nuttige opties om het uitvoerformaat op te geven of de manier waarop symbolische links worden behandeld te wijzigen.
1. Basis Uitvoeropties
2. Symbolische Link Verwerkingsopties
3. Opties voor het Opgeven van het Uitvoerformaat
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`stat` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Voorbeeldtoepassingen
Leer hoe je gedetailleerde eigenschappen van bestanden/directories kunt bekijken en analyseren aan de hand van verschillende voorbeelden van het `stat`-commando.
Alle Informatie van een Enkel Bestand Bekijken
stat config.ini
Geeft alle gedetailleerde informatie weer, zoals grootte, rechten, eigenaar en timestamps, van het bestand `config.ini`.
Informatie van de Symbolische Link Zelf Bekijken
stat -P mylink.sh
Als `mylink.sh` een symbolische link naar `actual_script.sh` is, toont het de informatie van `mylink.sh` zelf. (Grootte van de linkbestanden, eigenaar, enzovoort)
Informatie van het Originele Bestand waar de Symbolische Link naar Verwijst Bekijken
stat -L mylink.sh
Als `mylink.sh` een symbolische link naar `actual_script.sh` is, toont het de informatie van het bestand `actual_script.sh`.
Enkel Bepaalde Informatie in Aangepast Formaat Weergeven
stat -c '%n %s %y' my_document.txt
Geeft alleen de naam, grootte (bytes) en laatste wijzigingstijd (YYYY-MM-DD HH:MM:SS) van het bestand `my_document.txt` weer.
Informatie van het Bestandssysteem waar het Bestand zich Bevindt Bekijken
stat --file-system /var/log
Geeft informatie weer over het bestandssysteem waarin de directory `/var/log` zich bevindt, zoals type, blokgrootte, mountpunt, enzovoort.
Unix Timestamp (mtime) van een Bestand Bekijken
stat -c '%Y' important_data.csv
Nuttig wanneer je de wijzigingstijd van een bestand als Unix-timestamp (in seconden) in een script wilt gebruiken voor berekeningen.