find命令解析(不一樣的查詢)
linux中,全部內容都是以檔案的形式存在的,這就意味著所有檔案的數量也是驚人的,我們如何在天文數字般的檔案中找到我們需要的檔案呢?這就要用到檔案查詢命令,本次我們就**一下其中的find命令。
find的特性 www.2cto.com
在檔案查詢命令中不僅有find命令,還有locate命令,它們既然都是檔案查詢命令,那麼有什麼不一樣呢?
locate:
非實時,模糊匹配,查詢是根據全系統檔案資料庫進行的;手動生成檔案資料庫
速度快。
find:實時,精確,速度慢,遍歷指定目錄中的所有檔案完成查詢。
find的使用
find命令的使用格式如下:
find 查詢路徑 查詢標準 查詢到以後的處理動作
www.2cto.com
查詢路徑:預設為當前目錄
查詢標準:預設所有檔案
處理運**預設顯示出來
下面我們分開來說明。
匹配標準:
-name 檔名:對檔名做精確匹配
例:查詢etc目錄下的passwd find /etc –name 「passwd」
-iname:不區分大小寫
-regex 模式:使用正規表示式進行查詢
-user : 根據屬主查詢
例:查詢透tmp目錄下屬於student的檔案 find /tmp –user student
-group:根據屬組查詢
-uid:根據uid查詢
-gid:根據gid查詢
-nouser:查詢沒有屬主的檔案
例:查詢tmp目錄下沒有屬主的檔案 find /tmp -nouser
-nogrep:查詢沒有屬組的檔案
-type:根據檔案型別查詢:
例:查詢tmp目錄下目錄 find /tmp –type d
-size :根據檔案大小查詢 數字+單位 預設單位是位元組
例:查詢etc目錄下大小為一兆的檔案 find /etc –size 1m
-mtime (-|+)天數:查詢修改天數(內|外)的檔案
例:查詢當前目錄下兩天內訪問的檔案 find ./ -atime -2
-ctime:查詢改變天數的檔案
-atime:查詢訪問天數的檔案
-perm (/|-)許可權:
/:只匹配一位許可權即可
-:檔案許可權全包含時才顯示
例:查詢當前目錄下許可權為644的檔案 find ./ -perm -644
合條件組:
-a:與關係
-o:或關係
-not:非關係
使用方法和平常一樣,無非是把不同條件邏輯組合在一起使用,這裡就不再多講了。
動作:-print:顯示
-ls:列表顯示
-exec 命令 {} \;:引用命令完成查詢
例:查詢當前目錄下許可權為644的檔案並將其許可權改為536 find ./ -perm -644 –exec chomd 536
不一樣又不一樣的 木板接水
空地上豎立著n個從左到右排列的木板,它們可以把水擋住,但溢位最邊上木板的水將會流到空地上。已知木板間距都是單位1,現給定每個木板的高度,請求出總共能接住的水量?說明一點,這裡只考慮間距 寬度 和高度,不考慮第三個維度,因此水量是平方單位。木板高度分別是2,1,3,那麼我們可以接住2 2 4平方單位的...
我們不一樣
前輩們因自身實際的種種因素的影響而產生的認知,並不一定適用於我們自身。你可能從來不會去想乙個問題 你的觀點,來自 其實,它們絕大部分來自網路,它們或多或少地蠶食了你的判斷力。未來的路要怎麼走,沒有對與錯。有的,只是每乙個選擇所需要承擔的責任。我不想面臨,後之視今亦猶今之視昔的悲哀。我希望,未來回首,...
我們不一樣
這麼多年的兄弟 有誰比我更了解你 太多太多不容易 磨平了歲月和脾氣 時間轉眼就過去 這身後不散的筵席 只因為我們還在 心留在原地 張開手 需要多大的勇氣 這片天 你我一起撐起 更努力 只為了我們想要的明天 好好的 這份情好好珍惜 我們不一樣 每個人都有不同的境遇 我們在這裡 在這裡等你 我們不一樣 ...