首頁 > 軟體

Linux基礎知識:find命令的使用

2020-06-16 17:34:05

find 命令用於查詢檔案系統中的指定檔案。

*命令格式:find pathname -option [-print -exex -ok]

1.pathname要查詢的目錄路徑

~表示home目錄

.表示當前目錄

/表示根目錄

2.option常用的選項

-name:按名稱查詢

-perm:按檔案許可權查詢

-prune:不在當前指定目錄下查詢

-type:按照檔案型別查詢

-user:查詢指定屬主的檔案或目錄

-group:查詢指定所屬組的檔案或目錄

-nouser:查詢無有效屬主的檔案

-nogroup:查詢五有效所屬組的檔案

-depth:從指定目錄下最深層的子目錄開始查詢

-size:查詢指定大小的檔案

3.引數

-print: find命令將匹配的檔案輸出到標準輸出。

-exec: find命令對匹配的檔案執行該引數所給出的shell命令。相應命令的形式為'command' { } ;,注意{ }和;之間的空格。

-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該引數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓使用者來確定是否執行。

4.使用-name選項,按名字查詢

在當前目錄及子目錄中,查詢大寫字母開頭的txt檔案
find . -name '[A-Z]*.txt' -print

在/etc及其子目錄中,查詢host開頭的檔案
find /etc -name 'mo*' -print

在HOME目錄及其子目錄中,查詢所有檔案  
find ~ -name '*' -print

在當前目錄及子目錄中,查詢不是out開頭的txt檔案  
find . -name "d*" -prune -o -name "*.txt" -print

5.按目錄查詢

在當前目錄除aa之外的子目錄內搜尋 txt檔案
find . -path "./abc" -prune -o -name "*.txt" -print

在當前目錄及除aa和bb之外的子目錄中查詢txt檔案
find . ( -path "./aa" -o -path "./bb" ) -prune -o -name "*.txt" -print

在當前目錄,不再子目錄中,查詢txt檔案
find . ! -name "." -type d -prune -o -type f -name "*.txt" -print

 

6.按檔案許可權查詢

在當前目錄及子目錄中,查詢屬主具有讀寫執行,其他具有讀執行許可權的檔案
find . -perm 755 -print

7.按檔案型別查詢

在當前目錄及子目錄下,查詢符號連結檔案
find . -type l -print

在/etc目錄下查詢所有的符號連結檔案,可以用

$ find /etc -type l -print

8.按屬主及屬組查詢檔案

查詢屬主是tt的檔案  
find / -user tt -type f -print  
查詢屬主被刪除的檔案
find / -nouser -type f -print  
查詢屬組admin的檔案
find / -group admin -type f -print  
查詢使用者組被刪掉的檔案
find / -nogroup -type f -print

9.按大小查詢  

查詢超過1M的檔案
$ find / -size +1M -type f -print  
查詢等於6位元組的檔案
$ find . -size 6c -print  
查詢小於32k的檔案
$ find . -size -32k -print

本文永久更新連結地址http://www.linuxidc.com/Linux/2016-09/134947.htm


IT145.com E-mail:sddin#qq.com