Linux查詢檔案命令find
Linux find命令用來在指定目錄下查詢檔案
語法
find path [-option] [ -print] [-exec -ok command] {} \;
命令用法
path:查詢檔案的路徑 當前目錄及其子目錄用.
表示
[-option]:可選引數 引數很多,這裡只介紹一些常用的 具體的使用請使用 man find命令自己檢視
-
-typeb/d/c/p/l/f 常用的有 f 查詢普通檔案d 查詢目錄
-
-name按檔名查詢
-
-iname 按檔名查詢忽略大小寫
-
-user按使用者來查詢
-
-group 按使用者組查詢
-
-size按檔案大小查詢n[c]查長度為n塊[或n位元組]的檔案1塊=512位元組
-
-ctime -n +n 按建立時間(create time)查詢 -n指n天以內,+n指n天以前
-
-atime -n +n 按訪問時間(access time)查詢 -n指n天以內,+n指n天以前
-
-mtime -n +n (modify time)查詢 -n指n天以內,+n指n天以前
-cmin -amin -mmin 查詢n分鐘內(前)建立,訪問,修改的檔案及目錄
-
-perm按執行許可權查詢
-
-empty 查詢空檔案
-
-used-n +n 查詢被使用過的檔案 -n指n天以內,+n指n天以前
[-print]:find命令將匹配的檔案輸出到標準輸出預設值
[-exec]:find命令對匹配的檔案執行該引數所給出的shell命令。相應命令的形式為'command' { } ;,注意{ }和\;之間的空格。
[-ok]:和-exec的作用相同,只不過以一種更為安全的模式來執行該引數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓使用者來確定是否執行。
例項
1.查詢當前路徑下的所有目錄檔案
find .
2.查詢根目錄下的目錄檔案
find /
3.查詢根目錄下的所有目錄
find / -type d
4.查詢根目錄下名稱為index.php的檔案
find / -name index.php
5.查詢/home目錄下屬於zhangsan的檔案
find /home -user zhangsan -type -f
6.查詢/home目錄下的屬於test使用者組的檔案
find /home -group test -type -f
7.查詢/home目錄下3天前建立的檔案
find /home -ctime +3 -type -f
8.查詢/home目錄下3天內建立的檔案
find /home -ctime -3 -type -f
9.列出/home檔案或目錄被改動過之後,在2日內被存取過的檔案或目錄
find/home -used -2
10.查詢/home目錄下站記憶體大於512k的檔案
find /home -size +512k
11.在/home目錄下查詢許可權為777,檔案字尾為php的檔案並執行 ls -al命令
find /home -perm 0777 -name "*.php" -exec ls -al {} \;
12.查詢/home目錄下的所有後綴為html的檔案並詢問是否刪除
find /home -name "*.html" -ok rm {} \;