檔案的搜素命令

2021-10-03 16:59:14 字數 3146 閱讀 8641

是通過path環境變數到該路徑內查詢可執行檔案,因此基本功能是尋找可執行的檔案
查詢可執行檔案:

查詢命令路徑:

查詢命令別名:

-b:只查詢二進位制檔案

-m:只查詢在說明檔案manual路徑下的檔案

依賴於事先構建好的索引庫,定時更新索引庫 updatedb

查詢速度快,模糊查詢

-b:只匹配路徑中的基名

-c:統計總共有多少符合條件個檔案

find [options] [查詢的起始路徑] [查詢條件] [處理動作]

查詢的起始路徑:指定具體的搜尋目錄,預設為當前目錄

查詢條件:指定查詢的標準,大小,檔名,型別。預設是指定路徑下的所有檔案

處理動作:符合查詢條件的檔案做出的操作,例如cp,rm,預設為輸出到標準輸出

查詢條件:

a:表示式:

與 -a 

或 -o

非:-not !

b:檔名查詢:
檔名查詢:

-name "pattern" --- 引號需要加

支援萬用字元 * ? [^]

-iname "pattern" 不區分大小寫

基於正規表示式模式查詢

-regex "pattern" 匹配整個路徑 而不是檔名

find / -regex /t.*/f.*

c:根據檔案的從屬關係查詢
-user   屬主

-group 屬組

-uid gid 屬主id

-gid gid 屬組id

-nouser 沒有屬主的檔案

-nogroup 沒有屬組的檔案

d:根據檔案型別查詢
-type  type

f:普通檔案

d:目錄

b:塊裝置檔案

l:鏈結檔案

c:字元裝置檔案

p:管道檔案

s:socket套接字檔案

e: -size [+|-] #unit
#unit:(#-1,#]

-#unit:[0,#-1)

+#unit:(#,oo)

查詢/etc目錄下大於1m且型別為普通檔案的所有檔案;

f:根據時間戳查詢

以天為單位

-atime [+|-]# 檔案最後訪問時間

-mtime [+|-]# 檔案最後修改時間

-ctime [+|-]# 檔案最後改變時間

#:[#,#-1): 10 大於等於10天前,小於9天前

-#:(#,0] -10 最後的訪問時間10天以內

+#:(oo,#-1] +10 最後的訪問時間在9天以前,包括9天

查詢最近10天訪問的檔案

g:以分鐘為單位
-amin  [+|-]#

-mmin [+|-]#g

-cmin [+|-]#

h:根據檔案許可權來查詢
-perm  mode   777   rwx  421    

許可權物件:三類 屬主 屬組 其他

許可權位: 讀 寫 執行 r w x 4 2 1

h: mode 精確查詢

/mode:任何乙個許可權物件中滿足其一即可

-mode:所有都需要滿足

421 精確,9位許可權位所有的許可權位保持一致

/421 只要包含,且9位許可權中每個許可權中有乙個滿足即可 或

-421 只要包含,且9位許可權中每個許可權均要滿足 與

查詢/etc目錄下所有使用者都沒有寫許可權的檔案

查詢/etc目錄至少有一類使用者沒有執行許可權的檔案

k:目錄層級

-path 基於目錄層級

基於目錄深度查詢

-maxdepth 最大深度

-mindepth 最小深度

查詢/etc目錄下第三層目錄中的檔案

處理動作

-print: 預設動作,輸出到標準輸出作:

-fls /path/to/somefile:將查詢到的檔案的長格式資訊寫入到指定檔案中

-ok commond {} \; 對執行的每個檔案做commond操作,每次的操作需要使用者確認

-exec commond {} \; 對執行的每個檔案做commond操作

檔案的搜素命令

1 which 查詢可執行的檔案 搜尋命令所在路徑以及別名 2 whereis 只能用於搜尋程式名 搜尋命令所在的路徑以及幫助文件所在位置 b 只查詢可執行檔案 m 只查詢幫助檔案 3.locate 依賴於事先構建好的索引庫,定時更新索引庫 查詢速度快,模糊查詢 locate安裝命令 yum ins...

簡單搜素題集

不解釋 include using namespace std define ll long long define rep i a b for int i a i b i define clr a x memset a x sizeof a define re freopen 1.in r std...

深度搜素 搜尋巢狀

搜尋問題,擴充套件節點的時候會iterate乙個link集合,一般就是乙個for 迴圈,但有的時候,這個集合並不能直接得到,而是另乙個搜尋問題,比如n個數分k組問題的一種解法是 問題分成k個步驟,每個步驟確定乙個組,具體乙個組可分的方案的candidate集合就不是直接可以用for來iterate的...