linux下find(檔案查詢)命令的用法總結
?表示通配任意的單個字元
[ ] 表示通配括號裡面的任意一個字元
(2),根據檔案所屬使用者和組來查詢檔案
# -user//根據屬主來查詢檔案
# -group //根據屬組來查詢檔案
(3),根據uid 和 gid來查詢使用者
#find /tmp -uid 500 //查詢uid是500 的檔案
#find /tmp -gid 1000 // 查詢gid是1000的檔案
(4),-a and -o and –not的使用
# -a 連線兩個不同的條件(兩個條件必須同時滿足)
# -o 連線兩個不同的條件(兩個條件滿足其一即可)
# -not 對條件取反的
(5),根據檔案時間戳的相關屬性來查詢檔案
我們可以使用stat命令來檢視一個檔案的時間資訊如下:
#-atime
#-mtime
#-ctime
#-amin
#-mmin
#-cmin
所以這裡atime,mtime,ctime就是分別對應的“最近一次訪問時間”“最近一次內容修改時間”“最近一次屬性修改時間”,這裡的atime
#find /tmp –atime +5 //表示查詢在五天內沒有訪問過的檔案
#find /tmp -atime -5 //表示查詢在五天內訪問過的檔案
(6),根據檔案型別來查詢檔案
-type
f // 普通檔案
d //目錄檔案
l //連結檔案
b //
c //字元裝置檔案
p //管道檔案
s //socket檔案
(7),根據大小來查詢檔案
-size
#find /tmp -size 2M //查詢在/tmp 目錄下等於2M的檔案
#find /tmp -size +2M //查詢在/tmp 目錄下大於2M的檔案
#find /tmp -size -2M //查詢在/tmp 目錄下小於2M的檔案
(8),根據檔案許可權查詢檔案
-perm
#find /tmp -perm 755 //查詢在/tmp目錄下許可權是755的檔案
#find /tmp -perm +222 //表示只要有一類使用者(屬主,屬組,其他)的匹配寫許可權就行
#find /tmp -perm -222 //表示必須所有類別使用者都滿足有寫許可權
(9),-nouser and -nogroup
#find / -nogroup –a –nouser //在整個系統中查詢既沒有屬主又沒有屬組的檔案(這樣的檔案通常是很危險的,作為系統工程師的我們應該及時清除掉)
[查詢完執行的action]
# -print //預設情況下的動作
# -ls //查詢到後用ls 顯示出來
# -ok [commend] //查詢後執行命令的時候詢問使用者是否要執行
# -exec [commend] //查詢後執行命令的時候不詢問使用者,直接執行
這裡要注意{}的使用:替代查詢到的檔案
#find /tmp -atime +30 –exec rm –rf {} \; #刪除查詢到的超過30天沒有訪問過檔案
我們也可以使用xargs來對查詢到的檔案進一步操作
………………………………………………………………………………………ok! 以上就是關於find的使用方法