linux系統下常用的搜尋命令是:find命令。
1、find命令簡介:
Linux find命令用來在指定目錄下查找檔案。任何位於參數之前的字元串都將被視爲欲查找的目錄名,如果使用該命令時,不設定任何參數,則find命令將在當前目錄下查找子目錄與檔案,並且將查找到的子目錄和檔案全部進行顯示。
2、語法:
find path -option [ -print ] [ -exec -ok command ] {} ;
3、參數說明:
path : find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。
-print:find命令將匹配的檔案輸出到標準輸出。
-exec:find命令對匹配的檔案執行該參數所給出的shell命令。相應命令的形式爲'command' { } ;,注意{ }和;之間的空格。
-ok:和-exec的作用相同,只不過以一種更爲安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓用戶來確定是否執行。
舉例:
將目前目錄及其子目錄下所有延伸檔名是c的檔案列出來:
# find . -name "*.c"
將目前目錄其其下子目錄中所有一般檔案列出:
# find . -type f
將目前目錄及其子目錄下所有最近20天內更新過的檔案列出:
# find . -ctime -20
查找/var/log目錄中更改時間在7日以前的普通檔案,並在刪除之前詢問它們:
# find /var/log -type f -mtime +7 -ok rm {};
查找前目錄中檔案屬主具有讀、寫權限,並且檔案所屬組的用戶和其他用戶具有讀權限的檔案:
# find . -type f -perm 644 -exec ls -l {};
爲了查找系統中所有檔案長度爲0的普通檔案,並列出它們的完整路徑:
# find / -type f -size 0 -exec ls -l {} ;