Android

Stat Befehl in Linux

Desktop Shortcut erstellen unter Linux

Desktop Shortcut erstellen unter Linux

Inhaltsverzeichnis:

Anonim

stat ist ein Befehlszeilenprogramm, das detaillierte Informationen zu bestimmten Dateien oder Dateisystemen anzeigt.

Dieser Artikel beschreibt die Verwendung des Befehls stat .

Verwenden des Befehls stat

Die Syntax für den Befehl stat lautet wie folgt:

stat… FILE…

stat akzeptiert einen oder mehrere Eingabedateinamen und enthält eine Reihe von Optionen, die das Befehlsverhalten und die Ausgabe steuern.

Schauen wir uns das folgende Beispiel an:

stat file.txt

Die Ausgabe sieht ungefähr so ​​aus:

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: -

Beim Aufrufen ohne Optionen zeigt stat die folgenden Dateiinformationen an:

  • Datei - Der Name der Datei. Größe - Die Größe der Datei in Byte. Blöcke - Die Anzahl der zugewiesenen Blöcke, die die Datei benötigt, symbolische Verknüpfung…) Gerät - Gerätenummer in hexadezimal und dezimal.Inode - Inode-Nummer.Links - Anzahl der festen Verknüpfungen.Access - Dateiberechtigungen in den numerischen und symbolischen Methoden.Uid - Benutzer-ID und Name des Besitzers.Gid - Gruppe ID und Name des Besitzers.Kontext - Der SELinux-Sicherheitskontext.Zugriff - Der letzte Zugriff auf die Datei.Ändern - Der letzte Zeitpunkt, zu dem der Inhalt der Datei geändert wurde.Ändern - Der letzte Zeitpunkt, zu dem das Attribut oder der Inhalt der Datei geändert wurde.Geburt - Dateierstellungszeit (unter Linux nicht unterstützt).

Anzeigen von Informationen zum Dateisystem

Verwenden Sie die Option -f , ( --file-system ), um Informationen über das Dateisystem --file-system , in dem sich die angegebene Datei befindet, anstatt Informationen über die Datei selbst:

stat -f file.txt

Die Ausgabe des Befehls sieht folgendermaßen aus:

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

Wenn stat mit der Option -f aufgerufen wird, werden die folgenden Informationen -f :

  • Datei - Der Name der Datei.ID - Dateisystem-ID in hex.Namelen - Maximale Länge der Dateinamen. Grundlegende Blockgröße - Die Größe jedes Blocks im Dateisystem.
    • Total - Anzahl der gesamten Blöcke im Dateisystem.Free - Anzahl der freien Blöcke im Dateisystem.Available - Anzahl der freien Blöcke, die Nicht-Root-Benutzern zur Verfügung stehen.
    Inodes:
    • Total - Anzahl der Inodes im Dateisystem. Free - Anzahl der Inodes im Dateisystem.

Dereference (Follow) Symlinks

Standardmäßig folgt stat keinen Symlinks. Wenn Sie den Befehl für einen Symlink ausführen, enthält die Ausgabe Informationen zu dem Symlink und nicht zu der Datei, auf die er verweist:

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: -

--dereference Option -L ( --dereference ) können Sie den Symlink dereferenzieren (folgen) und Informationen zu der Datei anzeigen, auf die der Symlink verweist:

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: -

Anpassen der Ausgabe

Der Befehl stat bietet zwei Optionen, mit denen Sie die Ausgabe an Ihre Bedürfnisse anpassen können: -c , ( --format="format" ) und --printf="format" .

Der Unterschied zwischen diesen beiden Optionen besteht darin, dass --format bei Verwendung von zwei oder mehr Dateien als --format automatisch nach der Ausgabe jedes Operanden eine neue --format hinzufügt. Der --printf interpretiert Backslash-Escapes.

Es gibt viele Formatanweisungen für Dateien und Dateisysteme, die mit --format und --printf .

Um beispielsweise nur den Typ der zu verwendenden Datei anzuzeigen, gehen Sie wie folgt vor:

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

character special file

Sie können beliebig viele Formatierungsanweisungen kombinieren und optional benutzerdefinierte Trennzeichen dazwischen verwenden. Das Trennzeichen kann ein einzelnes Zeichen oder eine Zeichenfolge sein:

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

/dev/null, character special file

Verwenden Sie die Option --printf, um Sonderzeichen wie Zeilenvorschub oder Tabulator zu interpretieren:

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

druckt eine neue Zeile:

Name: /etc Permissions: 755

Die stat kann die Informationen auch in knapper Form anzeigen. Dieses Format ist nützlich für das Parsen durch andere Dienstprogramme.

Rufen Sie den Befehl mit der Option -t ( --terse ) auf, um die Ausgabe in knapper Form zu drucken:

stat -t /etc

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

Für eine vollständige Liste aller Formatanweisungen für Dateien und Dateisysteme geben Sie man stat oder stat --help in Ihr Terminal ein.

Fazit

Der Befehl stat Informationen zu bestimmten Dateien und Dateisystemen aus.

Unter Linux gibt es mehrere andere Befehle, mit denen Informationen zu bestimmten Dateien angezeigt werden können, wobei ls der am häufigsten verwendete ist. Es wird jedoch nur ein Teil der vom Befehl stat bereitgestellten Informationen stat .

stat terminal