Linux 命令 find 命令

2022-03-16 02:57:52 字數 1944 閱讀 9451

find是日常工具箱中功能更強大、更靈活的命令列工具之一,因此值得花費更多的時間。

最簡單的,find跟上路徑尋找一些東西。例如:

find /

它將找到(並列印出)系統中的每個檔案。而且由於一切都是檔案,你會得到很多需要整理的輸出。這可能不能幫助你找到你要找的東西。你可以改變路徑引數來縮小範圍,但它不會比使用ls命令更有幫助。所以你需要考慮你想要找的東西。

也許你想在主目錄中找到所有的 jpeg 檔案。-name引數允許你將結果限制為與給定模式匹配的檔案

可是等等!如果它們中的一些是大寫的副檔名會怎麼樣?-iname就像-name,但是不區分大小寫

很好!但是 8.3 名稱方案是如此的老。一些可能是 .jpeg 副檔名。幸運的是,我們可以將模式用「或」(表示為-o)來組合

或者,也許你想找到那些命名奇怪的目錄,以便稍後重新命名它們:

你最近拍了很多**,所以讓我們把它縮小到上週更改的檔案。

你可以根據檔案狀態更改時間 (ctime)、修改時間 (mtime) 或訪問時間 (atime) 來執行時間過濾。 這些是在幾天內,所以如果你想要更細粒度的控制,你可以表示為在幾分鐘內(分別是cminmminamin)。 除非你確切地知道你想要的時間,否則你可能會在+(大於)或-(小於)的後面加上數字。

但也許你不關心你的**。也許你的磁碟空間不夠用,所以你想在log目錄下找到所有巨大的(讓我們定義為「大於 1gb」)檔案:

find /var/log -size +1g

或者,也許你想在/data中找到 bcotton 擁有的所有檔案:

find /data -owner bcotton

你還可以根據許可權查詢檔案。也許你想在你的主目錄中找到對所有人可讀的檔案,以確保你不會過度分享。

find ~ -perm -o=r

你還可以通過下列語句確保模式檔案僅保留5天,並且所有早於此的檔案都將被刪除。

find ./backup/core-files*.tar.gz -mtime +4.9 -exec rm {} \;

上述命令中的-exec表示要對find出來的檔案執行什麼命令,後面緊跟的就是命令內容。rm表示刪除,{}表示的就是find出來的內容。;表示rm 命令的結束,但是為了不讓shell誤會所以前面加了\轉義。

find 命令 Linux命令篇 find命令

find name txt o name pdf print演示結果 find regex txt pdf iregex 忽略大小寫的正則 查詢所有非txt文字 find name txt print演示結果 列印出當前目錄的檔案 深度為1 find maxdepth 1 type f演示結果 5....

linux命令 find命令

一 根據名稱查詢檔案和目錄 二 根據許可權查詢檔案和目錄 三 基於所有者和組查詢檔案和目錄 四 根據日期和時間查詢檔案和目錄 五 根據大小查詢檔案和目錄 一 根據名稱查詢檔案和目錄 1 使用當前目錄中的名稱查詢檔案 find test.c 2 在主目錄下查詢檔案 find home name tes...

Linux命令 find 查詢命令

help引數,查詢命令引數 find help 命令格式 find h l p olevel d help tree search stat rates opt exec path expression 這樣的說法你能看的懂嗎?反正我是看不懂。於是乎使用 man find命令,得到各引數更詳細的解釋...