ファイルのchmod値を取得します。

ファイルのchmod値を取得します。

FreeBSDとLinuxでファイルの数値を取得するにはchmod?たとえば、?644代わりに-rw-r--r--、Bashスクリプトを使用してこれを実行する自動化された方法が必要です。

答え1

統計出力形式を使用して直接値を取得できます。

Linux:

stat --format '%a' <file>

BSD/OS X:

stat -f "%OLp" <file>

忙しい箱:

 stat -c '%a' <file>

答え2

stat YOUR_FILE計算スクリプトを作成しない場合の使用:

rwx rwx rwx ==> ( r = 4 ) if set + ( w = 2) if set + (x = 1) if set , for example:
You have :
-rw-wxrw- => (4+2+0)(0+2+1)(4+2+0) = 0636 
First argument before 9 permissions is one of :
- = regular file
d =  directory
b = block device
c = character device
s = socket
p = pipe
f = fifo

ところで、私はアンケートと連携することができるので、代わりにstat commandonを使用しています。Linux boxfreebsdHFSUFS

答え3

いくつかの追加情報stat:

$ stat -c %a file.txt

777  

$ stat -c %A file.txt

-rwxrwxrwx

答え4

GNU を使用して、stat現在の作業ディレクトリに隠されていないすべてのファイルの値を取得します。

stat --format "%a  %n" -- *

関連情報