Stat: Unterschied zwischen den Versionen
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“ |
|||
(70 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''stat''' | {{DISPLAYTITLE:stat}} | ||
'''stat''' - Dateisystemstatus anzeigen | |||
= Beschreibung = | == Beschreibung == | ||
Mit dem Befehl <tt>stat</tt> ( | Mit dem Befehl <tt>stat</tt> ('''stat'''us) lassen sich Zugriffs- und Änderungs-Zeitstempel von Dateien und Ordnern anzeigen | ||
* Weiterhin werden Informationen zu, zu Besitzer und Gruppe und zum Dateityp ausgegeben | * Weiterhin werden Informationen zu, zu Besitzer und Gruppe und zum Dateityp ausgegeben | ||
* Durch [http://wiki.ubuntuusers.de/stat#Formatangaben Formatangaben] ist die Ausgabe gemäß den eigenen Bedürfnissen darstellbar | * Durch [http://wiki.ubuntuusers.de/stat#Formatangaben Formatangaben] ist die Ausgabe gemäß den eigenen Bedürfnissen darstellbar | ||
Es gibt Shells mit eingebautem ''stat''. Die Dokumentation der Shell enthält die dort unterstützten Optionen | |||
Es gibt Shells mit eingebautem 'stat'. Die Dokumentation der Shell enthält die dort unterstützten Optionen | |||
; Welches ''stat'' wird aufgerufen? | |||
$ '''type stat''' | $ '''type stat''' | ||
stat ist /usr/bin/stat | stat ist /usr/bin/stat | ||
= Installation = | == Installation == | ||
'''stat''' ist Teil des essenziellen Pakets ''[[coreutils]]'' und auf jedem [[GNU-System]] installiert | |||
= | == Anwendung == | ||
Datei: »datei.txt“ | Datei: »datei.txt“ | ||
Größe: 6 Blöcke: 8 EA Block: 4096 Normale Datei | Größe: 6 Blöcke: 8 EA Block: 4096 Normale Datei | ||
(…) | (…) | ||
Ausgegeben wird: | Ausgegeben wird: | ||
* der Dateiname | * der Dateiname | ||
* die Dateigröße (in Bytes) | * die Dateigröße (in Bytes) | ||
* die Anzahl der auf dem Dateisystem reservierten Blöcke (512 Bytes pro Block) | * die Anzahl der auf dem Dateisystem reservierten Blöcke (512 Bytes pro Block) | ||
* die typische Größe eines Blocks, der bei der Eingabe und Ausgabe mit einem mal vom Dateisystem gelesen bzw | * die typische Größe eines Blocks, der bei der Eingabe und Ausgabe mit einem mal vom Dateisystem gelesen bzw | ||
* geschrieben wird (in Bytes) | * geschrieben wird (in Bytes) | ||
* der Dateityp | * der Dateityp | ||
In dem Beispiel ist die Datei <tt>datei.txt</tt> 6 Bytes groß, belegt aber 8*512 = 4096 Bytes an Festplattenplatz, da dies die minimale Blockgröße des aktuellen Dateisystems ist | In dem Beispiel ist die Datei <tt>datei.txt</tt> 6 Bytes groß, belegt aber 8*512 = 4096 Bytes an Festplattenplatz, da dies die minimale Blockgröße des aktuellen Dateisystems ist | ||
$ '''stat Sample.txt''' | $ '''stat Sample.txt''' | ||
wird folgendes ausgegeben: | wird folgendes ausgegeben: | ||
Datei: »Sample.txt“ | Datei: »Sample.txt“ | ||
Größe: 6 | Größe: 6 Blöcke: 8 EA Block: 4096 Normale Datei <br> | ||
Gerät: 801h/2049d | Gerät: 801h/2049d Inode: 4257439 Verknüpfungen: 1 <br> | ||
Zugriff: (0664/-rw-rw-r--) | Zugriff: (0664/-rw-rw-r--) Uid: ( 1000/ubuntuuser) Gid: ( 1000/ubuntuuser) | ||
Zugriff | Zugriff : 2012-10-10 13:20:00.000000000 +0200 | ||
Modifiziert: 2012-10-10 09:13:29.000000000 +0200 | Modifiziert: 2012-10-10 09:13:29.000000000 +0200 | ||
Geändert | Geändert : 2012-10-10 13:20:00.484609642 +0200 | ||
Geburt | Geburt : - | ||
Ausgegeben wird | Ausgegeben wird | ||
Zeile 123: | Zeile 53: | ||
$ '''LANG=C stat testfile''' | $ '''LANG=C stat testfile''' | ||
File: testfile | File: testfile | ||
Size: 0 | Size: 0 Blocks: 0 IO Block: 4096 regular empty file | ||
Device: 2dh/45d Inode: 124131251 | Device: 2dh/45d Inode: 124131251 Links: 1 | ||
Access: (0644/-rw-r--r--) | Access: (0644/-rw-r--r--) Uid: ( 1000/dirkwagner) Gid: ( 1000/dirkwagner) | ||
Access: 2022-03-14 00:40:56.690663102 +0100 | Access: 2022-03-14 00:40:56.690663102 +0100 | ||
Modify: 2022-03-14 00:40:56.690663432 +0100 | Modify: 2022-03-14 00:40:56.690663432 +0100 | ||
Zeile 132: | Zeile 62: | ||
=== Zugriffsrechte === | === Zugriffsrechte === | ||
Zugriff: (0664/-rw-rw-r--) | Zugriff: (0664/-rw-rw-r--) Uid: ( 1000/user) Gid: ( 1000/user) </code> | ||
* Es werden die Zugriffsrechte in oktaler und in [:Rechte#Rechte-in-symbolischer-Darstellung: menschenlesbarer Form angezeigt | * Es werden die Zugriffsrechte in oktaler und in [:Rechte#Rechte-in-symbolischer-Darstellung: menschenlesbarer Form angezeigt | ||
* ID und Name des Besitzers sind angegeben, ebenso wie ID und Name der Gruppe | * ID und Name des Besitzers sind angegeben, ebenso wie ID und Name der Gruppe | ||
=== Zeitstempel === | === Zeitstempel === | ||
Zugriff | Zugriff : 2012-10-10 13:20:00.000000000 +0200 | ||
Modifiziert: 2012-10-10 09:13:29.000000000 +0200 | Modifiziert: 2012-10-10 09:13:29.000000000 +0200 | ||
Geändert | Geändert : 2012-10-10 13:20:00.484609642 +0200 | ||
Die einzelnen Zeitstempel haben folgende Bedeutung: | Die einzelnen Zeitstempel haben folgende Bedeutung: | ||
* '''Zugriff''' - gibt den Zeitstempel an, wann die Datei zum letzten Mal gelesen wurde | * '''Zugriff''' - gibt den Zeitstempel an, wann die Datei zum letzten Mal gelesen wurde | ||
* '''Modifiziert''' - gibt den Zeitstempel der letzten Änderung des Dateiinhalts an | * '''Modifiziert''' - gibt den Zeitstempel der letzten Änderung des Dateiinhalts an | ||
* '''Geändert''' - gibt den Zeitstempel der letzten Änderung der Metadaten (z.B. Dateirechte) an | * '''Geändert''' - gibt den Zeitstempel der letzten Änderung der Metadaten (z. B. Dateirechte) an | ||
Mit [[ | Mit [[touch |touch]] lassen sich Zeitstempel ändern | ||
'''Hinweis ''' | '''Hinweis ''' | ||
Der unter Windows vorhandene Zeitstempel ''"Erstellt am…"'' ist zwar auch bei Linux (<tt>crtime</tt>, ab ext3) vorhanden, kann aber nicht ausgelesen werden | Der unter Windows vorhandene Zeitstempel ''"Erstellt am…"'' ist zwar auch bei Linux (<tt>crtime</tt>, ab ext3) vorhanden, kann aber nicht ausgelesen werden | ||
=== Dateityp anzeigen === | |||
== | |||
Dateityp | |||
$ '''stat -c %F datei.txt ''' | $ '''stat -c %F datei.txt ''' | ||
Normale leere Datei | Normale leere Datei | ||
=== Zugriffsrechte in symbolisch und Zeitstempel des letzten Zugriffs anzeigen === | |||
$ '''stat --format %A%x datei.txt''' | $ '''stat --format %A%x datei.txt''' | ||
-rw-rw-r--2012-10-15 19:12:17.315844786 +0200 | -rw-rw-r--2012-10-15 19:12:17.315844786 +0200 | ||
Für die Datei '''datei.txt''' den Dateinamen, den Ort des Einhängens, den Nutzername des Besitzers und die Gesamtgröße anzeigen und dabei die Formatierung der Ausgaben vorgeben: | Für die Datei '''datei.txt''' den Dateinamen, den Ort des Einhängens, den Nutzername des Besitzers und die Gesamtgröße anzeigen und dabei die Formatierung der Ausgaben vorgeben: | ||
stat --printf "Dateiname: %n\nOrt des Einhaengens: %m\nNutzername: %U\nGesamtgroesse: %s\n" datei.txt | $ '''stat --printf "Dateiname: %n\nOrt des Einhaengens: %m\nNutzername: %U\nGesamtgroesse: %s\n" datei.txt''' | ||
Dateiname: datei.txt | Dateiname: datei.txt | ||
Ort des Einhaengens: / | Ort des Einhaengens: / | ||
Nutzername: ubuntuuser | Nutzername: ubuntuuser | ||
Gesamtgroesse: 13* Informationen zum Dateisystem der Datei '''datei.txt''' anzeigen: | Gesamtgroesse: 13* Informationen zum Dateisystem der Datei '''datei.txt''' anzeigen: | ||
$ '''stat -f datei.txt ''' | $ '''stat -f datei.txt ''' | ||
Zeile 176: | Zeile 102: | ||
Blockgröße: 4096 Fundamentale Blockgröße: 4096 | Blockgröße: 4096 Fundamentale Blockgröße: 4096 | ||
Blöcke: Gesamt: 76409150 Frei: 47061485 Verfügbar: 43180129 | Blöcke: Gesamt: 76409150 Frei: 47061485 Verfügbar: 43180129 | ||
Inodes: Gesamt: 19406848 Frei: 18755502* oktale Dateirechte aller Dateien im aktuellen Ordner: | Inodes: Gesamt: 19406848 Frei: 18755502* oktale Dateirechte aller Dateien im aktuellen Ordner: | ||
$ '''stat -c '%A %a %n' *''' | $ '''stat -c '%A %a %n' *''' | ||
= | == Aufruf == | ||
== | $ '''stat [OPTION]… DATEI…''' | ||
== | === Optionen === | ||
# stat | {| class="wikitable sortable" | ||
# | |- | ||
# | ! Unix !! GNU !! Beschreibung | ||
|- | |||
|| -L || --dereference || [http://wiki.ubuntuusers.de/ln#Symbolische-Verknuepfungen Verknüpfungen] folgen (Im Unterschied zu normalen Programmen gibt <tt>stat</tt> standardmäßig Informationen zur symbolischen Verknüpfung selbst aus und nicht zur Datei auf die sie zeigt.) | |||
|- | |||
|| -f || --file-system || Dateisystemstatus anstelle von Dateistatus anzeigen | |||
|- | |||
|| -c=FORMAT || --format=FORMAT || Das angegebene [http://wiki.ubuntuusers.de/stat#Formatangaben FORMAT] anstelle der Voreinstellung benutzen; Zeilenvorschub nach jeder Benutzung | |||
|- | |||
|| || --printf=FORMAT || Wie --format, aber Rückschrägstrich‐Steuerzeichen auswerten, kein obligatorischer Zeilenvorschub; letzterer kann mittels \n in [http://wiki.ubuntuusers.de/stat#Formatangaben FORMAT] eingefügt werden | |||
|- | |||
|| -t || --terse || Information in knapper Form ausgeben | |||
|- | |||
|| || --help || Hilfe anzeigen | |||
|- | |||
|| || --version || Versionsinformation anzeigen | |||
|- | |||
|} | |||
== | ==== Formatangaben ==== | ||
Bei den Optionen <tt>-c=FORMAT</tt>, <tt>--format=FORMAT</tt> und <tt>--printf=FORMAT</tt> sind für <tt>FORMAT</tt> folgende Formatangaben möglich: | |||
= | {| class="wikitable sortable big" | ||
|- | |||
| | %a | |||
| | Zugriffsrechte im [http://wiki.ubuntuusers.de/Rechte#Oktale-Darstellung Oktalformat] | |||
|- | |||
| | %A | |||
| | [http://wiki.ubuntuusers.de/Rechte Zugriffsrechte] in menschenlesbarer Form | |||
|- | |||
| | %F | |||
| | Dateityp | |||
|- | |||
| | %m | |||
| | Ort des Einhängens | |||
|- | |||
| | %n | |||
| | Dateiname | |||
|- | |||
| | %s | |||
| | Gesamtgröße in Bytes | |||
|- | |||
| | %U | |||
| | Nutzername des Besitzers | |||
|- | |||
| | %x | |||
| | Zeit des letzten Zugriffs | |||
|- | |||
| | %y | |||
| | Zeit der letzten Modifikation | |||
|- | |||
| | %z | |||
| | Zeit der letzten Änderung | |||
|- | |||
|} | |||
Weitere Formatangaben sind der Manpage zu entnehmen | |||
= | === Parameter === | ||
=== Umgebung === | |||
=== Rückgabewert === | |||
== Dokumentation == | |||
=== Man-Page === | |||
=== Info-Pages === | |||
# info '(coreutils) stat invocation | |||
== Siehe auch == | |||
# [[statfs]](2) | |||
# [[statx]](2) | |||
# [[Inode]] | |||
== Links == | |||
=== Projekt-Homepage === | |||
# https://www.gnu.org/software/coreutils/stat | |||
=== Weblinks === | |||
[[Kategorie:Linux | [[Kategorie:Linux/Befehl]] | ||
[[Kategorie:Linux | [[Kategorie:Linux/Datei/Eigenschaft]] |
Aktuelle Version vom 12. November 2024, 19:40 Uhr
stat - Dateisystemstatus anzeigen
Beschreibung
Mit dem Befehl stat (status) lassen sich Zugriffs- und Änderungs-Zeitstempel von Dateien und Ordnern anzeigen
- Weiterhin werden Informationen zu, zu Besitzer und Gruppe und zum Dateityp ausgegeben
- Durch Formatangaben ist die Ausgabe gemäß den eigenen Bedürfnissen darstellbar
Es gibt Shells mit eingebautem stat. Die Dokumentation der Shell enthält die dort unterstützten Optionen
- Welches stat wird aufgerufen?
$ type stat stat ist /usr/bin/stat
Installation
stat ist Teil des essenziellen Pakets coreutils und auf jedem GNU-System installiert
Anwendung
Datei: »datei.txt“ Größe: 6 Blöcke: 8 EA Block: 4096 Normale Datei (…)
Ausgegeben wird:
- der Dateiname
- die Dateigröße (in Bytes)
- die Anzahl der auf dem Dateisystem reservierten Blöcke (512 Bytes pro Block)
- die typische Größe eines Blocks, der bei der Eingabe und Ausgabe mit einem mal vom Dateisystem gelesen bzw
- geschrieben wird (in Bytes)
- der Dateityp
In dem Beispiel ist die Datei datei.txt 6 Bytes groß, belegt aber 8*512 = 4096 Bytes an Festplattenplatz, da dies die minimale Blockgröße des aktuellen Dateisystems ist
$ stat Sample.txt
wird folgendes ausgegeben:
Datei: »Sample.txt“ Größe: 6 Blöcke: 8 EA Block: 4096 Normale Datei
Gerät: 801h/2049d Inode: 4257439 Verknüpfungen: 1
Zugriff: (0664/-rw-rw-r--) Uid: ( 1000/ubuntuuser) Gid: ( 1000/ubuntuuser) Zugriff : 2012-10-10 13:20:00.000000000 +0200 Modifiziert: 2012-10-10 09:13:29.000000000 +0200 Geändert : 2012-10-10 13:20:00.484609642 +0200 Geburt : -
Ausgegeben wird
- der Dateiname
- die Dateigröße (in Bytes)
- die Anzahl der auf dem Dateisystem reservierten Blöcke (512 Bytes pro Block)
- die typische Größe eines Blocks, der bei der Eingabe und Ausgabe mit einem mal vom Dateisystem gelesen bzw. geschrieben wird (in Bytes)
- der Dateityp
- Inode
$ LANG=C stat testfile File: testfile Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: 2dh/45d Inode: 124131251 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1000/dirkwagner) Gid: ( 1000/dirkwagner) Access: 2022-03-14 00:40:56.690663102 +0100 Modify: 2022-03-14 00:40:56.690663432 +0100 Change: 2022-03-14 00:40:56.684708135 +0100 Birth: -
Zugriffsrechte
Zugriff: (0664/-rw-rw-r--) Uid: ( 1000/user) Gid: ( 1000/user)
- Es werden die Zugriffsrechte in oktaler und in [:Rechte#Rechte-in-symbolischer-Darstellung: menschenlesbarer Form angezeigt
- ID und Name des Besitzers sind angegeben, ebenso wie ID und Name der Gruppe
Zeitstempel
Zugriff : 2012-10-10 13:20:00.000000000 +0200 Modifiziert: 2012-10-10 09:13:29.000000000 +0200 Geändert : 2012-10-10 13:20:00.484609642 +0200
Die einzelnen Zeitstempel haben folgende Bedeutung:
- Zugriff - gibt den Zeitstempel an, wann die Datei zum letzten Mal gelesen wurde
- Modifiziert - gibt den Zeitstempel der letzten Änderung des Dateiinhalts an
- Geändert - gibt den Zeitstempel der letzten Änderung der Metadaten (z. B. Dateirechte) an
Mit touch lassen sich Zeitstempel ändern
Hinweis Der unter Windows vorhandene Zeitstempel "Erstellt am…" ist zwar auch bei Linux (crtime, ab ext3) vorhanden, kann aber nicht ausgelesen werden
Dateityp anzeigen
$ stat -c %F datei.txt Normale leere Datei
Zugriffsrechte in symbolisch und Zeitstempel des letzten Zugriffs anzeigen
$ stat --format %A%x datei.txt -rw-rw-r--2012-10-15 19:12:17.315844786 +0200
Für die Datei datei.txt den Dateinamen, den Ort des Einhängens, den Nutzername des Besitzers und die Gesamtgröße anzeigen und dabei die Formatierung der Ausgaben vorgeben:
$ stat --printf "Dateiname: %n\nOrt des Einhaengens: %m\nNutzername: %U\nGesamtgroesse: %s\n" datei.txt Dateiname: datei.txt Ort des Einhaengens: / Nutzername: ubuntuuser Gesamtgroesse: 13* Informationen zum Dateisystem der Datei datei.txt anzeigen:
$ stat -f datei.txt Datei: "datei.txt" ID: 84dc3e24ed064a9f Namenslänge: 255 Typ: ext2/ext3 Blockgröße: 4096 Fundamentale Blockgröße: 4096 Blöcke: Gesamt: 76409150 Frei: 47061485 Verfügbar: 43180129 Inodes: Gesamt: 19406848 Frei: 18755502* oktale Dateirechte aller Dateien im aktuellen Ordner:
$ stat -c '%A %a %n' *
Aufruf
$ stat [OPTION]… DATEI…
Optionen
Unix | GNU | Beschreibung |
---|---|---|
-L | --dereference | Verknüpfungen folgen (Im Unterschied zu normalen Programmen gibt stat standardmäßig Informationen zur symbolischen Verknüpfung selbst aus und nicht zur Datei auf die sie zeigt.) |
-f | --file-system | Dateisystemstatus anstelle von Dateistatus anzeigen |
-c=FORMAT | --format=FORMAT | Das angegebene FORMAT anstelle der Voreinstellung benutzen; Zeilenvorschub nach jeder Benutzung |
--printf=FORMAT | Wie --format, aber Rückschrägstrich‐Steuerzeichen auswerten, kein obligatorischer Zeilenvorschub; letzterer kann mittels \n in FORMAT eingefügt werden | |
-t | --terse | Information in knapper Form ausgeben |
--help | Hilfe anzeigen | |
--version | Versionsinformation anzeigen |
Formatangaben
Bei den Optionen -c=FORMAT, --format=FORMAT und --printf=FORMAT sind für FORMAT folgende Formatangaben möglich:
%a | Zugriffsrechte im Oktalformat |
%A | Zugriffsrechte in menschenlesbarer Form |
%F | Dateityp |
%m | Ort des Einhängens |
%n | Dateiname |
%s | Gesamtgröße in Bytes |
%U | Nutzername des Besitzers |
%x | Zeit des letzten Zugriffs |
%y | Zeit der letzten Modifikation |
%z | Zeit der letzten Änderung |
Weitere Formatangaben sind der Manpage zu entnehmen
Parameter
Umgebung
Rückgabewert
Dokumentation
Man-Page
Info-Pages
- info '(coreutils) stat invocation