在find上進行複習:在Linux發行版上查找文件

放大鏡

使用集成在文件管理器中的當前搜索引擎,搜索文件和目錄相對簡單,但是有時我們可能希望更好地使用終端,或者由於沒有圖形環境,因此我們可能別無選擇,只能使用終端。 所以, 我覺得複習發現很有趣,這是眾所周知的命令,但由於大量使用圖形環境而被遺忘了。

好吧,發現,顧名思義,它除了 查找文件,儘管它還有其他替代方法(例如locate等),但我們將重點放在查找上,因為它功能強大,並且使我們可以通過許多有趣的選項成功地進行搜索。 如果我們按原樣使用它,而沒有任何選擇,它將執行的操作是啟動一個列表,該列表類似於我們將使用ls獲得的列表,該列表包含整個目錄(和子目錄)的內容。

但這不是我們感興趣的, 我們想要的是自定義和完善一點 搜索更加精確,並幫助我們找到真正要尋找的東西。 要了解它是如何工作的,我認為沒有比顯示find的實際示例更好的方法了:

  • 按名稱搜索,我們可以使用選項或搜索條件«-name»。 例如,第一個示例查找名稱以“ musi”開頭的文件/目錄,第二個以“ eon”結尾的文件/目錄,而最後一個在根/目錄中包含單詞“ found”的文件/目錄:
find / -name "musi*"

find / -name "*eon"

find / -name "fundar"

  • 有一個稱為-type的選項,可以用作過濾器,並且可以與-name一起使用。 在這種情況下,它可以 指定要搜索的文件類型。 使用B,我們以塊模式搜索特殊文件,使用C來搜索字符模式的特殊文件,D來存儲目錄,F來存儲普通文件,L來存儲符號鏈接,P來存儲命名管道,S來存儲套接字或網絡連接。 例如,假設您要搜索一個目錄,該目錄的名稱末尾和主目錄/用戶目錄中均帶有“ hello”:
find /Home/usuario -name "*hola" -type D

  • 我們也可以 按用戶或所屬組搜索 系統上的目錄或文件。 為此,我們可以使用-user和-group條件。 現在,假設您要查找一個文件,該文件包含用戶«Rosa»的«.mp3»和Downloads目錄中的«Cats»組:
find /Descargas -name ".mp3" -user Rosa -group Gatos

  • 尺寸可以幫助我們按尺寸搜索。 在這種情況下,我們有不同的選擇可以應用。 A表示塊,如果未指定大小,則默認為512字節。 C表示1字節ASCII字符,W表示2字節(舊)字,K表示千字節或1024字節。 例如,如果我們要在/中搜索2560字節(5塊·512)的文件,另一個10個ASCII字符,另一個100KB,另一個小於5MB,另一個大於30KB:
find / -size 5

find / -size 10c

find / -size 100K

find / -size -5000K

find / -size +30K

當然,-size將是 可與所有搜索條件結合 前和後,因此我們將獲得更精確的結果...

  • 你甚至可以 按時間標準搜索。 使用-atime可以按上次訪問的日期進行搜索。 -mtime(按內容修改的日期)和-ctime(按索引的上次修改日期)。 例如,我們要在/ Home中搜索一個名為“ hello”的目錄,該目錄屬於用戶“ Zaca”,並且在不到三天前已被修改:
find /Home -name "hola" -user Zaca -mtime -3

  • 還有更多標準 搜索,例如-perm搜索訪問授權或許可,-links搜索硬鏈接,-inum搜索inode編號。 讓我們來看最後一個示例,在這種情況下,我們將在當前目錄中查找目錄,該目錄的所有者用戶和組的權限總計,其餘部分的執行權限:
find -type d -perm 771

有時我們沒有意識到終端的潛力,而是使用其他工具,這些工具可能無法靈活處理已有的功能。 因此,我希望我對這篇不起眼的文章有所幫助。 玩得開心,留下您的評論...


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   他說:

    我不覺得好笑,但這對我有所幫助