Di FreeBSD dan juga di Linux, bagaimana saya bisa mendapatkan nilai numerik chmod
suatu file? Misalnya, 644
bukan -rw-r--r--
? Saya perlu cara otomatis untuk skrip Bash.
100
Anda bisa mendapatkan nilai secara langsung menggunakan format output stat, misalnya BSD / OS X:
stat -f "%OLp" <file>
atau di Linux
stat --format '%a' <file>
dan di kotak sibuk
stat -c '%a' <file>
busybox
digunakanstat -c '%a' <file>
--format
dapat disingkat-c
. Ini bekerja:stat -c %a <file>
gunakan
stat YOUR_FILE
kecuali tulis skrip yang menghitung:By the way, saya gunakan
stat command
padaLinux box
, bukanfreebsd
, karena itu menyelidikiHFS
mungkin bekerja dengan baikUFS
.sumber
FreeBSD box
, gunakan distat -x YOUR_FILE
bawahFreeBSD box
stat -r YOUR_FILE |awk '{print $3}'
berikan izin Anda.666
atau kode-rw-wxrw-
tetapi teks dengan penjelasan tentang setiap izin.awk
untuk mengambil kembali hasil numerik.Beberapa informasi tambahan tentang
stat
:sumber
stat -f %A file.txt
bawah mac, itu akan mengembalikan 644 atau 3 nomor digital lainnya.coba ini untuk daftar semua
sumber