Linux學習筆記 004 查詢命令

2021-08-26 20:27:34 字數 1984 閱讀 1990

**檔案查詢:

非實時查詢:locate

依賴於事先構建的索引,索引的構建是在系統較為空閒時自動進行(週期性任務):手動更新資料庫(updatedb):

索引構建過程需要便利整個根檔案系統,

工作特點:

查詢迅速:

模糊查詢:

非實時查詢:

語法:locate keyword

實時查詢: find

通過遍歷指定路徑下的檔案系統完成檔案查詢

工作特點:

實時查詢:

精確查詢:

速度略慢:

語法:find 引數 路徑 條件 處理動作

查詢路徑:指定具體路徑,預設為當前目錄

查詢條件:指定的查詢標準,可以為檔名大小型別許可權等標準進行路徑下遍歷查詢

處理動作:對符合條件的檔案做什麼操作,預設輸出至螢幕

查詢條件:

根據檔名查詢:

-name 「檔名稱」,支援使用glob機制

*,?,,[^]

-iname 「檔名稱」,不區分字元大小寫

-regex 「模式」支援使用正規表示式,以模式匹配整個檔案路徑字串,而不僅僅是檔名稱

根據屬主屬組查詢:

-user username :查詢主為指定使用者的檔案

-group groupname:查詢組為指定組的檔案

-uid uid:查詢為指定uid的檔案

-gid gid:

-nouser:查詢沒有屬主的檔案

-nogroup:

根據檔案型別進行查詢:

f:普通檔案

d:目錄檔案

l:符號鏈結檔案

p:管道檔案

s:套接字檔案

c:字元裝置檔案

b:塊裝置檔案

組合條件:

與:-a

或:-o

非:!,-not

!a -o !b = !( a -a b )

!a -a !b = !( a -o b )

根據檔案大小來查詢:

-size [+|-] k,m,g

find /var -size 3k -ls

find /var -size 3k -exec ls -l {} \;

numunit:(num-1,num]

-numunit:[0.num-1]

+numunit:(num,+∞)

根據時間戳:

以天為單位:

-atime:[+}-]num: num 剛好[num,num+1) +num num天之前[num+1,∞] -num:num天之內(0,num)

-mtime:

-ctime:

以分鐘為單位:

-amin:

-mmin:

-cmin:

根據許可權查詢:

-perm [+|-]mode

mode:精確許可權匹配

+mode:任何一類(ugo)物件的許可權中只要由一類匹配即可

-mode:三類物件都必須同時擁有為其指定的許可權標準

-666

處理動作:

-print:預設的處理動作

-ls:類似ls -l

-delete:刪除查詢道德檔案

-fls /file/to/where 查詢到的檔案的長格式資訊儲存到指定檔案中

-ok command {} \; 對查詢到的每個檔案執行由command制定的命令;對每個檔案執行命令之前,都會互動式要求使用者確認

-exec command {} \; 對查詢到的每個檔案執行command指定命令

注意:find春娣查詢道德我呢見至後面的命令時,查詢到所有符合條件的檔案一次性傳遞給後面的的命令有些命令不能接受過多的引數,此時命令執行可能會失敗,

另一種方式可規避此問題:find | xargs command

Perl學習筆記 004

matlab是matrix labrary的簡稱,是一款數學建模軟體,在自然語言處理中常常被用到。聽研究室的前輩說nlp中的聚類,分類以及矩陣分析等等常常用這個軟體進行研究。matlab中有許多關於自然語言處理的包。不過現在正在學習的初級階段,等到10月份的樣子再學習matlab吧。關於表示式中字串...

Python學習筆記004

0042020 7 7 python的比較操作符 左邊大於右邊 左邊大於等於右邊 左邊小於右邊 左邊小於等於右邊 左邊等於右邊 左邊不等於右邊 python條件分支語法 if條件 條件為真 true 執行的操作 else 條件為 false 執行的操作 python的while迴圈語法 while條...

Mysql學習筆記004

接著前面的寫 舉個栗子 我想給這些pet們過身日,我就要知道pet們的名字和他們的生日。我該怎麼辦?操作如下 select name,birth from pet mysql select name,birth from pet name birth whistler 1997 12 09 puff...