Aperçu
La commande `stat` affiche les informations de l'inode d'un fichier (métadonnées). L'option `-c` permet d'afficher ces informations dans un format défini par l'utilisateur, ce qui est idéal pour extraire des attributs spécifiques ou pour une utilisation combinée avec d'autres commandes.
Caractéristiques principales
- Affichage des métadonnées détaillées des fichiers et systèmes de fichiers
- Support du format de sortie personnalisé via l'option `-c`
- Utile pour les scripts et les tâches d'automatisation
- Accès à divers attributs de fichier (taille, permissions, propriétaire, temps, etc.)
Options principales
Il s'agit des principaux spécificateurs de format utilisés avec l'option `-c`, qui est essentielle pour la commande `stat`.
Options de format
Commande générée :
Essayez de combiner les commandes.
Description:
`stat` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples d'utilisation
Voici des exemples d'affichage des informations de fichier dans différents formats en utilisant l'option `stat -c`.
Afficher le nom et la taille du fichier
stat -c '%n %s' my_file.txt
Affiche le nom et la taille du fichier spécifié, séparés par un espace.
Afficher le type et les permissions du fichier
stat -c '%F %A' my_script.sh
Affiche le type de fichier et les permissions sous une forme lisible par l'homme.
Afficher le propriétaire, le groupe et l'heure de la dernière modification
stat -c 'Owner: %U, Group: %G, Modified: %y' my_document.pdf
Affiche le nom du propriétaire du fichier, le nom du groupe et l'heure de la dernière modification avec des chaînes spécifiques.
Vérifier la cible d'un lien symbolique
stat -c '%N' my_symlink
Dans le cas d'un lien symbolique, affiche le chemin du fichier d'origine lié.
Afficher le nom et la taille de tous les fichiers/répertoires du répertoire courant
stat -c '%n %s' *
Utilise des caractères génériques pour afficher le nom et la taille de tous les éléments du répertoire courant.
Conseils et précautions
Voici des conseils et des points à considérer pour utiliser `stat -c` plus efficacement.
Utilisation des guillemets
Si la chaîne FORMAT contient des espaces ou des caractères spéciaux, elle doit être entourée de guillemets simples (') ou doubles (") pour éviter que le shell ne l'interprète comme des arguments distincts.
- Guillemets simples (') : Utiles pour empêcher l'expansion des variables et transmettre la chaîne telle quelle.
- Guillemets doubles (") : Utilisés pour regrouper des chaînes tout en autorisant l'expansion des variables.
Format de l'heure
Les spécificateurs liés au temps (%x, %y, %z) affichent par défaut un format lisible par l'homme. Utilisez `%X`, `%Y`, `%Z` pour obtenir des horodatages en secondes.
Combinaison avec la commande find
find . -maxdepth 1 -type f -exec stat -c '%n %s' {} \;
Vous pouvez combiner avec l'option `-exec` de la commande `find` pour exécuter `stat -c` sur des fichiers répondant à des critères spécifiques.
Différences entre systèmes d'exploitation
Certains spécificateurs de format peuvent se comporter différemment ou ne pas être pris en charge selon le système d'exploitation ou la version de `stat`. Par exemple, le spécificateur `%w` (temps de création) n'est généralement pas pris en charge sous Linux, mais est disponible sous macOS/BSD.
- Linux: Utilise principalement la version de `stat` incluse dans le paquet `coreutils`.
- macOS/BSD: Le comportement de certains spécificateurs de format (par exemple, `%w`) peut différer.