天天看點

3、Linux學習筆記:Linux的常用指令-檔案搜尋指令目錄

目錄

點選這裡檢視所有博文

4.3檔案搜尋指令

4.3.1檔案搜尋指令find

*檔案搜尋:find

指令名稱:find

指令所在路徑:/bin/find

執行權限:所有使用者

文法:find【搜尋範圍】【比對條件】【檔案名】

​ -name根據檔案名搜尋,一個字母都不能錯,區分大小寫

​ 檔案名可以使用通配符來模糊比對:*可以比對任意字元。?可以比對一個未知字元

​ -iname根據檔案名搜尋,不區分大小寫

​ -size根據檔案大小搜尋,機關是資料塊,一個資料塊512位元組

​ +n大于;-n小于;n等于(幾乎不用)

​ -user根據所有者搜尋

​ -group根據所屬組搜尋

​ -amin根據通路時間搜尋

​ +n大于;-n小于;n等于(幾乎不用)

​ -cmin根據修改過檔案屬性時間搜尋

​ +n大于;-n小于;n等于(幾乎不用)

​ -mmin根據修改過檔案内容時間搜尋

​ +n大于;-n小于;n等于(幾乎不用)

​ -type根據檔案類型查找

​ f檔案;d目錄;l軟連結檔案

​ -inum根據i檔案節點查找

​ 連結查找多項比對條件:-a兩個條件同時滿足

​ -o兩個條件隻滿足一個

​ -exec/ok【指令】{};對搜尋結果進行操作

功能描述:檔案搜尋

範例:$find /home/cx/test -name test.txt 在目前目錄按照檔案名精準搜尋

​ $find /home/cx/test -iname test.txt 不區分大小寫

​ $find /home/cx/test -name *test*.* 在目前目錄按照搜尋包含這個檔案名的所有檔案

​ $find /home/cx/test -name 123test???.??? 在目前目錄按照搜尋包含這個檔案名并且後面隻有三個未知字元的檔案

​ $find /home/cx/test -size +400 這裡是查找一個大于200K的檔案,1K等于兩個資料塊

​ $find /home/cx -user cx 這裡是查找目錄下所有者是cx的檔案

​ $find /home/cx -mmin -30 這裡是查找目錄下30分鐘之内修改過檔案屬性的所有檔案

​ $find /home/cx -user cx -ok rm {} ; 這裡是查找目錄下所有者是cx的檔案,并且删除,有詢問提示

​ $find /home/cx -user cx -exec rm {} ; 這裡是查找目錄下所有者是cx的檔案,并且删除,沒有詢問提示

​ $find /home/cx -inum 12365 -exec rm {} ; 查找i節點,然後删除。對付奇怪的檔案及其有效

4.3.2其他搜尋指令

*在檔案資料庫中查找檔案:locate

指令名稱:locate

指令所在路徑:/usr/bin/locate

執行權限:所有使用者

文法:locate【檔案名】

​ -i不區分大小寫

功能描述:在檔案資料庫中查找檔案

範例:$locate test

*更新locate檔案資料庫:updatedb

指令名稱:updatedb

指令所在路徑:/usr/bin/updatedb

執行權限:所有使用者

文法:updatedb

功能描述:更新locate檔案資料庫

範例:$locate

*搜尋指令所在目錄以及别命資訊:which

指令名稱:which

指令所在路徑:/usr/bin/which

執行權限:所有使用者

文法:which【指令】

功能描述:搜尋指令所在目錄以及别命資訊

範例:$which updatedb

*搜尋指令所在目錄以及幫助文檔資訊:whereis

指令名稱:whereis

指令所在路徑:/usr/bin/whereis

執行權限:所有使用者

文法:whereis【指令】

功能描述:搜尋指令所在目錄以及幫助文檔資訊

範例:$whereis ls

*在檔案中搜尋字串比對的行并輸出:grep

指令名稱:grep

指令所在路徑:/bin/grep

執行權限:所有使用者

文法:grep -iv【指定字串】【檔案】

功能描述:在檔案中搜尋字串比對的行并輸出

​ -i 不區分大小寫

​ -v排除包含指定字串的整行

​ -^v隻排除行首是自定字元的

範例:$grep mysql /root/install.log

​ $grep multiuser /etc/inittab

繼續閱讀