GNU/Linux >> Tutoriels Linux >  >> Linux

Vérifiez l'état du fichier sous Linux avec la commande stat

La stat commande, incluse dans le GNU coreutils package, fournit une variété de métadonnées, y compris la taille du fichier, l'emplacement de l'inode, les autorisations d'accès et le contexte SELinux, ainsi que les heures de création et de modification, sur les fichiers et les systèmes de fichiers. C'est un moyen pratique de rassembler des informations pour lesquelles vous avez généralement besoin de plusieurs commandes différentes.

Installer stat sous Linux

Sous Linux, vous avez probablement déjà le stat commande installée car elle fait partie d'un package d'utilitaires de base qui est généralement fourni avec les distributions Linux par défaut.

Dans le cas où vous n'avez pas stat installé, vous pouvez installer coreutils avec votre gestionnaire de paquets.

Alternativement, vous pouvez compiler coreutils à partir du code source.

Obtenir le statut d'un fichier

Exécution de stat fournit une sortie facile à lire sur un fichier ou un répertoire spécifique.

$ stat planets.xml 
  Fichier :planets.xml
  Taille :325      Blocs :8     Bloc IO :4096   fichier normal
Appareil :fd03h/64771d    Inode :140217      Liens :1
Accès :(0664/-rw-rw-r--)  Uid :(1000/tux)   Gid :(100/users)
Contexte :unconfined_u:object_r:user_home_t:s0
Accès : 2021 -08-17 18:26:57.281330711 +1200
Modifier :2021-08-17 18:26:58.738332799 +1200
Modifier :2021-08-17 18:26:58.738332799 +1200
 Naissance :2021-08-17 18:26:57.281330711 +1200

C'est peut-être facile à lire, mais c'est quand même beaucoup d'informations. Voici ce que stat couvre :

  • Fichier :le nom du fichier
  • Taille :la taille du fichier en octets
  • Bloquer :le nombre de blocs sur le disque dur réservés à ce fichier
  • Bloc IO :la taille d'un bloc du système de fichiers
  • fichier normal :le type de fichier (fichier normal, répertoire, système de fichiers)
  • Appareil :l'appareil sur lequel se trouve le fichier
  • Inœud :le numéro d'inode où se trouve le fichier
  • Liens :le nombre de liens vers le fichier
  • Accès, UID, GID  :autorisations de fichier, utilisateur et propriétaire du groupe
  • Contexte :contexte SELinux
  • Accéder, Modifier, Changer, Naissance  :l'horodatage de l'accès, de la modification, du changement d'état et de la création du fichier

Sortie concise

Pour les personnes qui connaissent bien la sortie ou qui souhaitent analyser la sortie avec d'autres utilitaires comme awk, il y a le --terse (-t pour faire court) option, qui formate la sortie sans en-têtes ni sauts de ligne.

$ stat --terse planets.xml 
planets.xml 325 8 81b4 100977 100 fd03 140217 1 0 0 1629181617 1629181618 1629181618 1629181617 4096 unconfined_u:object_r:user_homepret

Choisir votre propre format

Vous pouvez définir votre propre format de sortie en utilisant le --printf option et une syntaxe similaire à printf. Chaque attribut rapporté par stat a une séquence de format (%C pour le contexte SELinux, %n pour le nom de fichier, etc.), afin que vous puissiez choisir ce que vous voulez voir dans un rapport.

$ stat --printf="%n\n%C\n" planets.xml 
planets.xml
unconfined_u:object_r:user_home_t:s0
$ $ stat --printf ="Nom :%n\nModifié : %y\n" planets.xml
Nom :planets.xml
Modifié :2021-08-17 18:26:58.738332799 +1200

Plus de ressources Linux

  • Aide-mémoire des commandes Linux
  • Aide-mémoire des commandes Linux avancées
  • Cours en ligne gratuit :Présentation technique de RHEL
  • Aide-mémoire sur le réseau Linux
  • Aide-mémoire SELinux
  • Aide-mémoire sur les commandes courantes de Linux
  • Que sont les conteneurs Linux ?
  • Nos derniers articles Linux

Voici quelques séquences de format courantes :

  • %a droits d'accès
  • %F type de fichier
  • %n nom de fichier
  • %U nom d'utilisateur
  • %u ID utilisateur
  • %g identifiant de groupe
  • %w heure de naissance
  • %y heure de modification

Une liste complète des séquences de format est disponible dans le stat la page de manuel et les coreutils pages d'informations.

Informations sur le fichier

Si vous avez déjà essayé d'analyser la sortie de ls -l , alors vous apprécierez la flexibilité de la stat commande. Vous n'avez pas toujours besoin de toutes les informations par défaut que stat fournit, mais la commande est inestimable lorsque vous en avez besoin de tout ou partie. Que vous lisiez sa sortie dans son format par défaut ou que vous créiez vos propres requêtes, le stat La commande vous permet d'accéder facilement aux données concernant vos données.


Linux
  1. Vérifiez les processus Java sous Linux avec la commande jps

  2. Rechercher des fichiers et des répertoires sous Linux avec la commande find

  3. Premiers pas avec la commande Linux tac

  4. Copiez et collez sur la ligne de commande Linux avec xclip

  5. Commande de tri sous Linux avec des exemples

Exemples de commandes Linux Stat

Utilisation de la commande Linux mv avec des exemples

Sécurisez Linux avec le fichier Sudoers

Commande de montage Linux avec exemples

Commande Linux gawk avec exemples

Linux make Commande avec des exemples