Je vous ai déjà parlé du chmod et du chown de manière extensive, mais aujourd’hui on va un tout petit peu plus loin.
Lorsque l’on affiche les permissions d’un fichier avec ls -l, on obtient une notation symbolique du type :
-rw-r-----
C’est lisible quand on a l’habitude, mais cela demande toujours une petite gymnastique mentale pour retrouver la valeur numérique du chmod.
Par exemple, -rw-r----- correspond à :
640
Heureusement, il existe une commande toute simple pour afficher directement la valeur numérique des permissions : stat.
Obtenir la valeur numérique du chmod avec stat
Sous Linux, avec la version GNU de stat, utilisez :
stat -c '%a %U:%G %n' *Code language: JavaScript (javascript)
Exemple de résultat :
644 matt:www-data index.php
640 matt:www-data wp-config.php
755 matt:www-data wp-contentCode language: CSS (css)
Les options utilisées sont les suivantes :
-cpermet de formater la sortie avec le modèle fourni ;%aaffiche les permissions en octal, donc la valeur numérique du chmod ;%Uaffiche le nom du propriétaire ;%Gaffiche le groupe propriétaire ;%naffiche le nom du fichier.
La documentation GNU Coreutils liste justement ces séquences de format pour stat, dont %a pour les bits de permission en octal, %U pour le propriétaire, %G pour le groupe et %n pour le nom du fichier.