Sous FreeBSD et aussi sous Linux, comment puis-je obtenir la chmod
valeur numérique d'un fichier? Par exemple, 644
au lieu de -rw-r--r--
? J'ai besoin d'un moyen automatique pour un script Bash.
101
Vous pouvez obtenir la valeur directement en utilisant un format de sortie stat, par exemple BSD / OS X:
stat -f "%OLp" <file>
ou sous Linux
stat --format '%a' <file>
et dans busybox
stat -c '%a' <file>
busybox
utilisationstat -c '%a' <file>
--format
peuvent être abrégés-c
. Cela fonctionne:stat -c %a <file>
utilisez à
stat YOUR_FILE
moins d'écrire un script qui calcule:Soit dit en passant, je l' utilise
stat command
surLinux box
, nonfreebsd
, parce qu'il enquêteHFS
probablement travailler avecUFS
.la source
FreeBSD box
, utilisezstat -x YOUR_FILE
sousFreeBSD box
stat -r YOUR_FILE |awk '{print $3}'
donne votre permission.666
ou des codes,-rw-wxrw-
mais un texte avec des explications sur chaque permission.awk
résultat numérique.Quelques informations supplémentaires sur
stat
:la source
stat -f %A file.txt
sous mac, il retournerait 644 ou un autre 3 nombre numérique.essayez ceci pour lister tout
la source