如果我正在尋找檔案的某些屬性,例如用戶的“rx”,像 '^-rx' 這樣的正則運算式將完成這項作業。但是,如果我必須顯示用戶和其他人對“寫入”屬性具有相同權限的檔案怎么辦?好的,我想傳遞給 awk stat 命令的結果:
stat --format="%a %n" filename (permissions in octal name)
然后使用腳本:
others=$1 % 10;
group = ($1 % 100 - others)/10;
owner = int($1 / 100);
獲得每個人的權限,然后
switch (owner) {
case 7:
case 6:
case 3:
case 2:
if (other!=1 || other !=4 || other!=5)
print $2;
case 1:
case 4:
case 5:
我想一定有一種更簡單的方法,雖然......
uj5u.com熱心網友回復:
我寧愿去find:
find -type f -perm -u w,o w -o \( ! -perm -u w -a ! -perm -o w \)
將查找檔案b和c來自:
$ls -l
-rw-r--r-- 1 john john 0 Dez 19 16:13 a
-r--r--r-- 1 john john 0 Dez 19 16:13 b
-rw-r--rw- 1 john john 0 Dez 19 16:13 c
不過要小心邏輯:看似簡單的
\( ! -perm -u w,o w \)
用于匹配用戶和其他人沒有寫權限的檔案將匹配兩個匹配aAND b。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/388692.html
上一篇:我在一個程式中有一個函式呼叫,但該函式已折舊。是否有任何更新的版本可以在我的代碼中使用?ebpf中的perf_buffer__new
