Voyons comment utiliser STAT pour obtenir toutes les données importantes dont vous avez besoin pour un fichier / système de fichiers spécifique.
Pourquoi Stat Command
Parfois, vous pouvez connaître certains détails clés sur un certain système de fichier / fichier, par exemple, la taille du fichier, les autorisations d'accès, le numéro d'inode, l'heure du dernier accès / modification, etc. Convenu, vous pouvez consulter beaucoup de détails sur un fichier utilisant LS. Cependant, STAT offre beaucoup plus de détail sur le fichier cible / le système de fichiers.
Quand devriez-vous utiliser STAT? Chaque fois que vous avez besoin de ces informations supplémentaires. Pour une comparaison rapide, consultons les informations sur le fichier du fichier1.SMS. Pour mieux comprendre la sortie, en savoir plus sur la commande LH.
$ ls -lh fichier1.SMS
Maintenant, vérifions ce que Stat a à offrir.
$ stat Fichier1.SMS
C'est beaucoup d'informations! Vous n'avez pas besoin de tous dans la vie quotidienne, mais dans une situation spécifique, STAT est super pratique.
Utilisation des statistiques de Linux: emplacement
La plupart des commandes Linux s'exécutent à partir du répertoire / usr / bin.
$ quelle statistique
Utilisation des statistiques de Linux: vérification des informations sur le fichier / le système de fichiers
Nous avons déjà vu cela en action, à droite? La structure de commande va comme ça.
$ stat
Pour voir les informations détaillées d'un fichier / système de fichiers, exécutez cette commande. Dans ce cas, c'est mon fidèle fichier1.SMS.
$ stat Fichier1.SMS
Il y a des tonnes d'informations sur le fichier spécifique, à droite? Toutes les informations présentées sont étiquetées. Selon vos besoins, prenez l'important. D'après mon expérience, les plus utilisées sont les autorisations de fichiers, Inode et UID et / ou GID.
Maintenant, vérifions un exemple avec un système de fichiers. Dans ce cas, ce sera le point de montage du système de fichiers. Par exemple, cette commande affichera les informations du racine système de fichiers.
$ stat /
Dans Linux, (presque) chaque chose est un fichier. Tout système de fichiers est un fichier lui-même, donc la sortie ne sera pas différente.
Utilisation des statistiques Linux: Form
Lorsque vous exécutez normalement la statistique, toutes les informations sont imprimées dans une structure lisible par l'homme. Je veux une version courte et simple de la sortie? Ajouter l'argument «-t».
$ stat -t /
Le format laconique est un format spécial qui utilise une liste prédéfinie de spécificateurs de format STAT.
Utilisation des statistiques Linux: format personnalisé
Ceci est une autre utilisation intéressante de la commande STAT où vous pouvez concevoir la structure de sortie souhaitée de STAT. Pour faire cette tâche, STAT propose une longue liste de spécificateurs de format disponibles.
Voici à quoi ressemble la commande.
$ stat - format =
Par exemple, le spécificateur «% A» renvoie les autorisations de fichier / système de fichier dans un format lisible par l'homme.
$ stat - format =% un fichier1.SMS
Le spécificateur «% u» renvoie le propriétaire du fichier / système de fichier.
$ stat - format =% u /
Pour obtenir la taille du fichier, utilisez le spécificateur de format «% S».
$ stat - format =% s fichier1.SMS
Je veux le type de fichier? Utilisez «% f».
$ stat - format =% f fichier1.SMS
Pour le numéro d'inode, utilisez «% i».
$ stat - format =% i fichier1.SMS
Maintenant, combinons tous ensemble en une seule ligne de commande. Il ressemblera à ceci.
$ stat --format = "% a% u% s" /
Il y a des tonnes d'autres spécificateurs de format que STAT prend en charge. Tous sont répertoriés dans la page homme des statistiques.
Maintenant, comme nous l'avons déjà vu l'argument «-t» ou «-terse», c'est une valeur prédéfinie pour les arguments suivants.
$ stat - format = "% n% s% b% f% u% g% d% i% h% t% t% x% y% z% w% o% c"
Quant à l'argument «-terse -file-system», la valeur prédéfinie est la suivante.
$ stat - format = "% n% i% l% t% s% s% b% f% a% c% d"
Ces sorties sont très utiles si vous utilisez STAT dans n'importe quelle sorte de script, en particulier dans les scripts bash. Nouveau script à bash? Consultez le Guide du débutant pour les scripts de bash.
Format printf vs
La commande stat prend en charge -printf argument qui fonctionne essentiellement de la même manière que -format. Cependant, la principale différence entre eux est la façon dont la sortie est produite.
Soyons clairs avec un exemple. Ici, j'exécute Stat avec les deux arguments avec le même spécificateur de format.
$ stat --format = "% a% u% s" fichier11.SMS
$ stat --printf = "% a% u% s" fichier11.SMS
Comme nous pouvons le voir, le -format L'argument ajoute une nouvelle ligne après la fin de la sortie. Cependant, le -printf n'a pas. Pour vous assurer qu'il y a une nouvelle ligne après la sortie, vous devez ajouter «\ n» à la fin de la chaîne de spécificateur de format.
$ stat --printf = "% a% u% s \ n" file1.SMS
Différencier le fichier et le lien
Dans certaines situations, vous pourriez réellement travailler avec un lien. Cependant, par défaut, STAT ne fait pas la différence entre un lien et un fichier physique. Il y a un argument dédié pour contourner ce problème. Il suffit de passer l'argument «-l».
$ stat -l
Dernières pensées
L'outil STAT est assez simple. Toutes ses fonctions sont gérées par des arguments et des drapeaux simples. Une fois que vous savez lequel utiliser, vous pouvez en retirer le plus avantage.
Pour en savoir plus sur la commande STAT, je recommande fortement de consulter la page de l'homme. Il contient tous les spécificateurs de format pris en charge et quelques arguments supplémentaires que vous pouvez trouver intéressant.
$ man stat
Apprécier!