1. 程式人生 > >linux常用命令(3)-檔案搜尋命令

linux常用命令(3)-檔案搜尋命令

3、檔案搜尋命令

     find:檔案搜尋  find [搜尋範圍] [匹配條件]

            find /etc -name init:通過檔名在etc目錄中查詢檔名是init的檔案,精確搜尋

            find /etc -name *init*:檔名中包含init這四個字母都會被查詢到,init*:以init開頭,init???:問好匹配單個字母,-iname:不區分大小寫

            find / -size +204800:在根目錄查詢大於100MB的檔案 -n:小於n的檔案 n:等於n的檔案  linux中資料用資料塊表示,一個數據塊等於0.5K,所以100MB=204800資料塊

            find /home -user zhangsan:按照所有者查詢,查詢所有者是zhangsan的檔案,-group:按照所屬組查詢

            find /etc -cmin -5:在etc下查詢5分鐘內被修改過檔案屬性的檔案和目錄,-amin訪問時間 -mmin檔案內容

            連線選項:

            find /etc -size +163840 -a -size  -204800:在etc下查詢大於80MB小於100MB的檔案 -a:兩個條件同時滿足,-o:兩個條件滿足任意一個即可

            find /etc -name inittab -exec ls -l {} \;:在etc下查詢inittab檔案並顯示其詳細資訊 -exec/-ok 命令 {} \;:後面是固定格式({} \;),-ok有一個詢問的過程

            -type:根據檔案型別查詢    f:檔案 d:目錄  l:軟連線檔案

            -inum:根據i節點查詢

     locate:在檔案資料庫中查詢檔案,類似於window的everything查詢軟體,速度快,缺點:剛建立未收入檔案庫中則不能找到

            locate 123:查詢123檔案

            updatedb:手動更新檔案庫,改善locate的缺點,不能查詢到臨時檔案目錄(tem)下的檔案

            locate -i abc:查詢時不區分字母的大小寫

     which:搜尋命令所在目錄及別名資訊

            which useradd:查詢useradd命令的所在目錄,可以看出命令的操作許可權

            whereis:可以查詢命令的絕對路徑和幫助文件所在路徑

    grep:在檔案中搜尋字元匹配的行並輸出  -i:不區分大小寫  -v:排除指定字串所在的行  grep -iv [指定字串] [檔案]

            grep 123 /etc/abc:查詢abc檔案中123字元所在的行,區分大小寫,-i:不區分大小寫

            grep -v ^# /etc/inittab:去掉以#開頭所在的行 ^表示行首