Android

Commande stat sous linux

Linux Astuces - 16. Netstat, découverte des connexions/ports et routes

Linux Astuces - 16. Netstat, découverte des connexions/ports et routes

Table des matières:

Anonim

stat est un utilitaire de ligne de commande qui affiche des informations détaillées sur des fichiers ou des systèmes de fichiers donnés.

Cet article explique comment utiliser la commande stat .

Utilisation de la commande stat

La syntaxe de la commande stat est la suivante:

stat… FILE…

stat accepte un ou plusieurs noms de FILE entrée et inclut un certain nombre d'options qui contrôlent le comportement et la sortie de la commande.

Jetons un œil à l'exemple suivant:

stat file.txt

La sortie ressemblera à ceci:

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

Lorsqu'elle est invoquée sans aucune option, stat affiche les informations de fichier suivantes:

  • Fichier - Le nom du fichier.Size - La taille du fichier en octets.Blocks - Le nombre de blocs alloués que le fichier prend.IO Block - La taille en octets de chaque bloc.Fichier type - (ex. Fichier normal, répertoire, lien symbolique…) Appareil - Numéro d'appareil en hexadécimal et décimal.Inode - Numéro d'inode.Liens - Nombre de liens durs.Accès - Autorisations de fichier dans les méthodes numériques et symboliques.Uid - ID utilisateur et nom du propriétaire.Gid - Groupe ID et nom du propriétaire.Contexte - Le contexte de sécurité SELinux.Accès - La dernière fois que le fichier a été consulté.Modifier - La dernière fois que le contenu du fichier a été modifié.Changer - La dernière fois que l'attribut ou le contenu du fichier a été modifié.Naissance - Heure de création du fichier (non pris en charge sous Linux).

Affichage d'informations sur le système de fichiers

Pour obtenir des informations sur le système de fichiers où réside le fichier donné, au lieu d'informations sur le fichier lui-même, utilisez l'option -f , ( --file-system ):

stat -f file.txt

La sortie de la commande ressemblera à ceci:

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

Lorsque stat est invoqué avec l'option -f , il affiche les informations suivantes:

  • Fichier - Le nom du fichier.ID - ID du système de fichiers en hex.Namelen - Longueur maximale des noms de fichiers.Taille de bloc fondamentale - La taille de chaque bloc sur le système de fichiers.Blocs:
    • Total - Nombre total de blocs dans le système de fichiers. Gratuit - Nombre de blocs libres dans le système de fichiers. Disponible - Nombre de blocs libres disponibles pour les utilisateurs non root.
    Inodes:
    • Total - Nombre d'inodes totaux dans le système de fichiers.Gratuit - Nombre d'inodes libres dans le système de fichiers.

Déréférencer (suivre) Symlinks

Par défaut, stat ne suit pas les liens symboliques. Si vous exécutez la commande sur un lien symbolique, la sortie inclura des informations sur le lien symbolique, pas le fichier vers lequel il pointe:

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

Pour déréférencer (suivre) le lien symbolique et afficher des informations sur le fichier vers lequel le lien symbolique pointe, utilisez l'option -L , ( --dereference ):

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

Personnalisation de la sortie

La commande stat dispose de deux options qui vous permettent de personnaliser la sortie en fonction de vos besoins: -c , ( --format="format" ) et --printf="format" .

La différence entre ces deux options est que lorsque deux fichiers ou plus sont utilisés comme opérants --format ajoute automatiquement une nouvelle ligne après la sortie de chaque opérande. --printf interprète les échappements antislash.

Il existe de nombreuses directives de format pour les fichiers et les systèmes de fichiers qui peuvent être utilisées avec --format et --printf .

Par exemple, pour afficher uniquement le type de fichier que vous utiliseriez:

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

character special file

Vous pouvez combiner n'importe quel nombre de directives de formatage et éventuellement utiliser des séparateurs personnalisés entre elles. Le séparateur peut être un seul caractère ou une chaîne:

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

/dev/null, character special file

Pour interpréter des caractères spéciaux comme la nouvelle ligne ou l'onglet, utilisez l'option --printf :

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

imprime une nouvelle ligne:

Name: /etc Permissions: 755

La stat peut également afficher les informations sous forme concise. Ce format est utile pour l'analyse par d'autres utilitaires.

Appelez la commande avec l'option -t ( --terse ) pour imprimer la sortie sous forme laconique:

stat -t /etc

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

Pour une liste complète de toutes les directives de format pour les fichiers et les systèmes de fichiers, tapez man stat ou stat --help dans votre terminal.

Conclusion

La commande stat imprime des informations sur des fichiers et des systèmes de fichiers donnés.

Sous Linux, il existe plusieurs autres commandes qui peuvent afficher des informations sur des fichiers donnés, ls étant la plus utilisée, mais elle ne montre qu'une partie des informations fournies par la commande stat .

terminal de statistiques