真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linuxfand命令,Linuxfind

Linux find 命令詳解

find 命令的基本結(jié)構(gòu)如下:

目前創(chuàng)新互聯(lián)已為上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁(yè)空間、成都網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、攀枝花網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

find [paths] [expression] [actions]

find 命令接受一個(gè)或多個(gè) 路徑 ( paths )作為搜索范圍,并在該路徑下 遞歸 地搜索。即檢索完指定的目錄后,還會(huì)對(duì)該目錄下的子目錄進(jìn)行檢索,以及子目錄下的子目錄。。。直到到達(dá)目錄樹底部。

默認(rèn)情況下(不帶任何搜索條件),find 命令會(huì)返回指定目錄下的 所有文件 ,所以常常需要通過(guò)特定的 expression 對(duì)結(jié)果進(jìn)行 篩選 。

find 命令默認(rèn)的 action 是將所有檢索結(jié)果打印至標(biāo)準(zhǔn)輸出??梢酝ㄟ^(guò)自定義 action ,讓 find 命令對(duì)搜索到的結(jié)果執(zhí)行特定的操作。

這里先不做詳細(xì)解釋,簡(jiǎn)單地測(cè)試下 find 命令:

find 命令中的 -name 選項(xiàng)可以根據(jù)文件名稱進(jìn)行檢索( 區(qū)分大小寫 )。如需要忽略文件名中的大小寫,可以使用 -iname 選項(xiàng)。

-name 和 -iname 兩個(gè)選項(xiàng)都支持 wildcards 。如:

find /usr -name '*.txt' 查找 /usr 目錄下所有文件名以 .txt 結(jié)尾的文件

find /usr -name '????' 查找 /usr 目錄下所有文件名剛好為 4 個(gè)字符的文件

有些時(shí)候,你需要在搜索時(shí)匹配某個(gè)文件或目錄的 完整路徑 ,而不僅僅是匹配文件名??梢允褂? -path 或 -ipath 選項(xiàng)。

如查找 /usr 下所有文件名以 .txt 結(jié)尾的文件或目錄,且該文件的父目錄必須是 src ??梢允褂靡韵旅睿?/p>

find /usr -path '*/src/*.txt'

如果只想搜索得到文件 或 目錄,即不想它們同時(shí)出現(xiàn)在結(jié)果中。可以使用 -type 選項(xiàng)指定文件類型。

-type 選項(xiàng)最常用的參數(shù)如下:

find /usr -type d -name 'python*' 檢索 /usr 下所有文件名以 python 開頭的 目錄

find 命令支持 -empty 選項(xiàng)用來(lái)檢索 為空 的文件或目錄??瘴募次募餂]有任何內(nèi)容,空目錄即目錄中沒有任何文件或子目錄。

find ~ -type d -empty 檢索用戶主目錄下所有的空目錄

find 命令也允許用戶對(duì)當(dāng)前的匹配條件進(jìn)行 “反義” (類似于 邏輯非 操作)。

如需要檢索 /usr 下所有文件名 不 以 .txt 為后綴的文件??梢允褂靡韵旅睿?/p>

find /usr -type f ! -name '*.txt'

也可以“翻轉(zhuǎn)”任何其他的篩選條件,如:

find /usr -type f ! -empty 檢索 /usr 下所有內(nèi)容不為空的文件

為了檢索歸屬于特定用戶的文件或目錄,可以使用 -user 選項(xiàng)。

find / -type f -user starky 檢索根目錄下所有屬主為 starky 的文件

類似于 -user 選項(xiàng), -group 選項(xiàng)則可以根據(jù)文件或目錄的 屬組 進(jìn)行檢索。

有些時(shí)候,需要根據(jù)文件創(chuàng)建或修改的時(shí)間進(jìn)行檢索。

Linux 系統(tǒng)中,與文件相關(guān)聯(lián)的時(shí)間參數(shù)有以下三種:

與此對(duì)應(yīng)的是 find 命令中的 -mtime , -atime 和 -ctime 三個(gè)選項(xiàng)。

這三個(gè)選項(xiàng)的使用遵循以下示例中的規(guī)則:

find /usr -type f -mtime 2 檢索 /usr 下兩天前被修改過(guò)的文件

如果覺得 -mtime 等選項(xiàng)以 天 為單位時(shí)間有點(diǎn)長(zhǎng),還可以使用 -mmin , -amin , -cmin 三個(gè)選項(xiàng):

find /usr -type f -mtime +50 -mtime -100 檢索 /usr 下 50 到 100 天之前修改過(guò)的文件

find /usr -type f -mtime 2 -amin 5 檢索 /usr 下兩天前被修改過(guò)且 5 分鐘前又讀取過(guò)的文件

-size 選項(xiàng)允許用戶通過(guò)文件大小進(jìn)行搜索(只適用于文件,目錄沒有大小……)。

表示文件大小的單位由以下字符組成:

另外,還可以使用 + 或 - 符號(hào)表示 大于 或 小于 當(dāng)前條件。

find / -size +1G 檢索文件大小高于 1 GB 的文件

find 命令可以使用 -perm 選項(xiàng)以文件權(quán)限為依據(jù)進(jìn)行搜索。

如需要檢索 /usr 目錄下權(quán)限為 rwxr-xr-x 的文件,可以使用以下命令:

find /usr -perm u=rwx,g=rx,o=rx

搜索 /usr 目錄下所有權(quán)限為 r-xr-xr-x (即系統(tǒng)中的所有用戶都只有讀寫權(quán)限)的文件和目錄,可以使用以下命令:

find /usr -perm a=rx

很多時(shí)候,我們只想匹配文件權(quán)限的一個(gè) 子集 。比如,檢索可以直接被任何用戶執(zhí)行的文件,即只關(guān)心文件的執(zhí)行權(quán)限,而不用管其讀寫權(quán)限是什么。

上述的需求可以通過(guò)以下命令實(shí)現(xiàn): find / -type f -perm /a=x

其中 a=x 前面的 / 符號(hào)即用來(lái)表示只匹配權(quán)限的某個(gè)子集(執(zhí)行權(quán)限),而不用關(guān)心其他權(quán)限的具體設(shè)置。

-perm 選項(xiàng)也支持?jǐn)?shù)字形式的文件權(quán)限標(biāo)記。

find /usr -perm 644 搜索 /usr 目錄下權(quán)限為 644 (即 rwxr-xr-x )的文件

find 命令默認(rèn)是以 遞歸 的方式檢索項(xiàng)目的,這有時(shí)候會(huì)導(dǎo)致得到的結(jié)果數(shù)量非常巨大。可以使用 -maxdepth 限制 find 命令遞歸的層數(shù)。

find / -maxdepth 3 搜索時(shí)向下遞歸的層數(shù)最大為 3

在之前的例子中有出現(xiàn)多個(gè)搜索條件的 組合 以及對(duì)某個(gè)搜索條件的 反轉(zhuǎn) 。

實(shí)際上 find 命令支持 “and” 和 “or” 兩種邏輯運(yùn)算,對(duì)應(yīng)的命令選項(xiàng)分別是 -a 和 -o 。通過(guò)這兩個(gè)選項(xiàng)可以對(duì)搜索條件進(jìn)行更復(fù)雜的組合。

此外還可以使用 小括號(hào) 對(duì)搜索條件進(jìn)行 分組 。注意 find 命令中的小括號(hào)常需要用 單引號(hào) 包裹起來(lái)。因小括號(hào)在 Shell 中有特殊的含義。

如檢索 /usr 下文件名以 python 開頭且類型為目錄的文件

find /usr -type d -name 'python*'

該命令等同于:

find /usr -type d -a -name 'python*'

更復(fù)雜的組合形式如:

find / '(' -mmin -5 -o -mtime +50 ')' -a -type f

-delete 選項(xiàng)可以用來(lái)刪除搜索到的文件和目錄。

如刪除 home 目錄下所有的空目錄:

find ~ -type d -empty -delete

-exec 選項(xiàng)可以對(duì)搜索到的結(jié)果執(zhí)行特定的命令。

如需要將 home 目錄下所有的 MP3 音頻文件復(fù)制到移動(dòng)存儲(chǔ)設(shè)備(假設(shè)路徑是 /media/MyDrive ),可使用下面的命令:

find ~ -type f -name '*.mp3' -exec cp {} /media/MyDrive ';'

其中的 大括號(hào) ( {} )作為檢索到的文件的 占位符 ,而分號(hào)( ; )作為命令結(jié)束的標(biāo)志。因?yàn)榉痔?hào)是 Shell 中有特殊含義的符號(hào),所以需要使用單引號(hào)括起來(lái)。

每當(dāng) find 命令檢索到一個(gè)符合條件的文件,會(huì)使用其完整路徑取代命令中的 {} ,然后執(zhí)行 -exec 后面的命令一次。

另一個(gè)很重要的用法是,在多個(gè)文件中檢索某個(gè)指定的字符串。

如在用戶主目錄下的所有文件中檢索字符串 hello ,可以使用如下命令:

find ~ -type f -exec grep -l hello {} ';'

創(chuàng)建 Gzip 格式的壓縮文件的命令為: tar -czvf filename.tar.gz list of files

現(xiàn)在假設(shè)需要將用戶主目錄下所有的 MP3 文件添加到壓縮包 music.tar.gz 中,直觀的感覺是,其命令應(yīng)為如下形式:

find ~ -type f -name '*.mp3' -exec tar -czvf music.tar.gz {} ';'

實(shí)際情況是,這樣得到的 music.tar.gz 其實(shí)只包含一個(gè) MP3 文件。

原因是 find 命令 每次 發(fā)現(xiàn)一個(gè)音頻文件,都會(huì)再執(zhí)行一次 -exec 選項(xiàng)后面的壓縮命令。導(dǎo)致先前生成的壓縮包被覆蓋。

可以先讓 find 命令檢索出所有符合條件的音頻文件,再將得到的 文件列表 傳遞給后面的壓縮命令。完整的命令如下:

find ~ -type f -name '*.mp3' -exec tar -czvf music.tar.gz {} +

如果想瀏覽搜索到的文件(目錄)的詳細(xì)信息(如權(quán)限和大小等),可以直接使用 -ls 選項(xiàng)。

find / -type file -size +1G -ls 瀏覽所有 1G 以上大小的文件的詳細(xì)信息

A Guide to the Linux “Find” Command

find 命令手冊(cè) : man find

linux find的用法

1、按名稱或正則表達(dá)式查找文件

要按特定名稱搜索文件,命令如下:

find . -name test.txt

如何查找所有格式為pdf的書籍?使用正則表達(dá)式:

find ./yang/books -name "*.pdf"

默認(rèn)情況下,find命令會(huì)搜索常規(guī)文件,但最好進(jìn)行指定(-type f)以使所有內(nèi)容更清晰:

find ./yang/books -type f -name "*.pdf"

2、查找不同類型的文件

除了搜索常規(guī)文件外,我們還可以通過(guò)指定-type選項(xiàng)來(lái)搜索其他類型的文件,例如目錄:

find . -type d -name "yang*"

或者符號(hào)鏈接:

find . -type l -name "yang*"

3、按指定的時(shí)間戳查找文件

要搜索atime超過(guò)一年的文件,我們可以編寫如下命令:

find . -type f -atime +365

如果我們需要查找mtime正好是5天前的文件,請(qǐng)不要包含+,因?yàn)樗囊馑际恰按笥凇薄?/p>

find . -type f -mtime 5

顯然,+表示“大于”,-表示“小于”。所以我們可以搜索ctime在5~10天前的文件:

find . -type f -ctime +5 -ctime -10

4、按大小查找文件

類似于按時(shí)間戳查找文件,+表示“大于”,-表示“小于”。例如,要查找大小為10MB~1GB的文件:

find . -type f -size +10M -size -1G

5、按權(quán)限查找文件

合理控制文件的權(quán)限是Linux管理員的一項(xiàng)重要任務(wù)。find命令的-perm選項(xiàng)可以幫助我們按指定權(quán)限查找文件:

find . -type f -perm 777

6、按所有權(quán)查找文件

例如,以下命令將查找所有屬于yang的文件:

find -type f -user yang

7、在找到文件后執(zhí)行命令

在大多數(shù)情況下,我們希望在找到我們需要的文件后進(jìn)行后續(xù)操作。例如將其刪除,或檢查它們的詳細(xì)信息等等。-exec命令使這些所有事情變得更加容易。

現(xiàn)在,要了解如何使用它,讓我們回到之前提到的面試問(wèn)題:

find . -type f -atime +365 -exec rm -rf {} \;

上述命令在-exec選項(xiàng)后是rm -rf,其用于刪除文件。{}是用于查找結(jié)果的占位符。

注意:占位符{}非常重要,尤其是在您想刪除文件時(shí)。因?yàn)?,如果您不使用它,該命令將?duì)所有文件執(zhí)行(而不是您剛剛通過(guò)find命令找到的文件)。

linux中find命令的使用詳解

常用命令

find (目錄) [-type d | f] (文件夾 | 文件) -name (名稱,可使用正則表達(dá)式)

find /root -name "*core"

find /root -type d -name "*core" 文件夾

find /root -type f -name "*core" 文件

find /root -type f -path "*core" 路徑

find /root -name "*core" -delete 查到后刪除

find /root -size +20M (-20M) 大于20M(小于20M)

find /root -name "*core" -exec ls {} ; 對(duì)查找后的文件執(zhí)行l(wèi)s操作

壹——主要內(nèi)容


網(wǎng)頁(yè)名稱:linuxfand命令,Linuxfind
網(wǎng)頁(yè)地址:http://weahome.cn/article/hocssg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部