Wie kann ich unter FreeBSD und auch unter Linux den numerischen chmod
Wert einer Datei ermitteln? Zum Beispiel 644
anstelle von -rw-r--r--
? Ich brauche einen automatischen Weg für ein Bash-Skript.
100
Sie können den Wert direkt mit einem stat-Ausgabeformat abrufen, z. B. BSD / OS X:
stat -f "%OLp" <file>
oder unter Linux
stat --format '%a' <file>
und in busybox
stat -c '%a' <file>
busybox
Einsatzstat -c '%a' <file>
--format
können abgekürzt werden-c
. Dies funktioniert:stat -c %a <file>
Verwenden Sie es
stat YOUR_FILE
sei denn, Sie schreiben ein Skript, das Folgendes berechnet:Übrigens benutze ich
stat command
weiterLinux box
nichtfreebsd
, da esHFS
wahrscheinlich mit recherchieren funktioniertUFS
.quelle
FreeBSD box
, verwenden Siestat -x YOUR_FILE
unterFreeBSD box
stat -r YOUR_FILE |awk '{print $3}'
gibt deine Erlaubnis.666
oder Codes,-rw-wxrw-
sondern ein Text mit Erläuterungen zu jeder Erlaubnis.awk
zu schreiben, um ein numerisches Ergebnis abzurufen.Einige zusätzliche Informationen zu
stat
:quelle
stat -f %A file.txt
unter Mac, es 644 oder eine andere 3 digitale Zahl zurückkehren würde.Versuchen Sie dies, um alle aufzulisten
quelle