說明:
** 並新增了一些自己的修改:p
#查詢系統中被設定了setuid的檔案:
find / -type f \( -perm -04000 -o -perm -02000 \) -exec ls -lg {} \;`
比如當前目錄下有a b c d4個檔案
a檔案的許可權為6000 也就是a檔案僅有suid sgid的特殊許可權
b檔案的許可權為2000 也就是b檔案僅有sgid的特殊許可權
c檔案的許可權為4000 也就是c檔案僅有suid的特殊許可權
d檔案的許可權為6600 也就是d檔案有sgid suid的特殊許可權並且該檔案擁有者對該檔案有讀寫許可權
那麼現在find . -type f -perm 6000
可以找到a檔案,因為a檔案許可權為6000
那麼現在find . -type f -perm -6000
可以找到a d兩個檔案,這是因為:
我們可以先將a b c d這4個檔案的許可權轉化為2進製那麼,
a許可權轉為2進製後為 110 000 000 000
b許可權轉為2進製後為 010 000 000 000
c許可權轉為2進製後為 100 000 000 000
d許可權轉為2進製後為 110 110 000 000
在find . -type f -perm -6000 中的6000許可權轉為2進製為110 000 000 000
,那麼6000前的-號代表缺一不可,也就是如果有1的地方必須有1,那麼這裡找-6000許可權的檔案,這6000許可權裡前面有2個位置都是1,所以這裡find找-6000許可權的檔案就是找前面2個位置都是1的檔案.而只有a d這兩個檔案前2個位置都是1,所以find . -type f -perm -6000 只會找到a d兩個檔案.
find . -type f -perm +6000
會找到a b c d這4個檔案,這是因為:
+6000
裡的這個+號代表有1即可,也就是有1的位置,任何位置只要有1就可以.那麼這裡找+6000
許可權的檔案,這6000許可權前面2個位置都有1,所以這裡find 找+6000
許可權的檔案就是找前面2個位置只要有乙個位置有1的檔案就可以了,這4個檔案都符合要求所以最後都能被find . -type f -perm +6000
找到
我們使用man查詢find的幫助文件時,發現-perm
還有乙個/modle
的格式,其實它等同+modle
,它建議我們使用/
而不使用+
, 因為+
容易產生混淆。所以以後您見到find -perm /modle
這樣的格式時, 就把它看成是+modle
即可。
find 查詢指定許可權的檔案
說明 並新增了一些自己的修改 p 查詢系統中被設定了setuid的檔案 find type f perm 04000 o perm 02000 exec ls lg perm permission perm mode 精確匹配許可權 perm mode 完全包含此mode時才可以匹配 perm mo...
php使用glob函式快速查詢指定目錄檔案的方法
php搜尋當前目錄所有檔案,如下 複製 如下 array glob print r array array 0 1.php 1 10.php 2 11.php cymatqfnbsp 3 2.asp 4 3.asp 5 4.aspx 6 5.html 7 6.php 8 7.php 9 8.php ...
Hive中將查詢結果匯出到指定分隔符的檔案中
在hive0.11.0版本中新引進了乙個新的特性,當使用者將hive查詢結果輸出到檔案中時,使用者可以指定列的分割符,而在之前的版本是不能指定列之間的分隔符。在hive0.11.0之前版本如下使用,無法指定分隔符,預設為 x01 hive hive insertoverwrite local dir...