Linux find命令詳解

find是Unix/Linux命令行工具箱中最棒的工具之一,該命令對于編寫shell腳本所起到的功用不可小視。

工作方式

find命令的工作方式如下:沿著文件層次結構向下遍歷,匹配符合條件的文件,執(zhí)行相應的操作。

使用方法

$ find base_path

base_path可以是任意路徑(例如/home/slynux),find會從該位置開始向下查找。

$ find . -print
# 打印文件和目錄的列表

.指定當前目錄,..指定父目錄。這是Unix文件系統(tǒng)中的約定用法。
-print指明打印出匹配文件的文件名(路徑)。

根據(jù)文件名或正則表達式進行搜索

選項-name的參數(shù)指定了文件名所必須匹配的字符串。我們可以將通配符作為參數(shù)使用。*.txt能夠匹配所有以.txt結尾的文件名。

$ find /home/slynux -name "*.txt" -print

find命令有一個選項 -iname(忽略字母大小寫),該選項的作用和 -name類似,只不過在匹配名字時會忽略大小寫。

否定參數(shù)

find也可以用“!”否定參數(shù)的含義。例如:

$ find . ! -name "*.txt" -print

根據(jù)文件類型搜索

Unix類系統(tǒng)將一切都視為文件。文件具有不同的類型,例如普通文件、目錄、字符設備、塊設備、符號鏈接、硬鏈接、套接字以及FIFO等。
-type可以對文件搜索進行過濾。借助這個選項,我們可以為find命令指明特定的文件匹配類型。
例如,只列出所有的目錄:

$ find . -type d -print

文件類型與類型參數(shù)對照表

文件類型 類型參數(shù)
普通文件 f
符號鏈接 l
目錄 d
字符設備 c
塊設備 b
套接字 s
FIFO p
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容

  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,239評論 2 33
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 99,585評論 9 467
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,973評論 19 139
  • 在linux下面工作,有些命令能夠大大提高效率。本文就向大家介紹find、grep命令,他哥倆可以算是必會的lin...
    拿破輪胎閱讀 1,000評論 0 4
  • 圈圈依舊矯情的活著,哈哈!每天的想法很多,每天的思緒很多,沒有什么不好,看淡一切,也就看淡所有了! 下載了很多老歌...
    OO碰到OO閱讀 178評論 0 0