find 命令

  1. find:功能強大的檔案搜尋指令。
    [root@kvm7 ~]# find [PATH] [option] [action]
    參數:
    1. 與時間有關的參數:
       -atime n :在 n 天之前的『一天之內』被 access 過的檔案;
       -ctime n :在 n 天之前的『一天之內』被 change 過狀態的檔案;
       -mtime n :在 n 天之前的『一天之內』被 modification 過的檔案;
       -newer file :比檔案 file 還新的檔案。
    2. 與使用者或群組名稱有關的參數:
       -uid n :使用者的帳號 ID,UID=n 的檔案
       -gid n :群組名稱的 ID,GID=n 的檔案
       -user name :使用者帳號名稱為 name 的檔案
       -group name:群組名稱為 name 的檔案
       -nouser    :檔案的擁有者不存在的檔案
       -nogroup   :檔案的擁有群組不存在的檔案
    3. 與檔案權限及名稱有關的參數:
       -name filename:檔案名稱為 filename 的檔案;
       -size [+-]SIZE:比 SIZE 還要大(+)或小(-)的檔案。SIZE 的規格有:
                       c:byte, k:1024bytes M:1048576bytes。例如:-size +50k。
       -type TYPE    :檔案的類型為 TYPE 的檔案,類型主要有:一般正規檔案 (f),
                       裝置檔案 (b, c), 目錄 (d), 連結檔 (l), socket (s), 
                       及 FIFO (p) 等屬性。
       -perm mode  :檔案屬性『剛好等於』 mode 的檔案
       -perm -mode :檔案屬性『必須包含所有 mode 的屬性』的檔案,權限數值大於等於 mode。
       -perm +mode :已不支援。
    4. 額外可進行的動作:
       -exec command {} \; :-exec 後再接指令 command 來處理搜尋的結果,
                             {} 為找到的內容,
                             分號 ; 為命令的結束符號,但要用反斜線 \ 跳脫。
       -print        :將結果列印到螢幕上(預設動作)
    
  2. 參數代換:xargs 可以讀入 stdin 的資料,並且以空白字元或斷行字元作為分辨,將 stdin 的資料分隔成為 arguments。
    [root@linux ~]# xargs [-0epn] command
    選項:
    -0  :如果輸入的 stdin 含有特殊字元,例如 `, \, 空白鍵等等字元時,這個 -0 參數
          可以將他還原成一般字元。
    -e  :EOF (end of file) 。當 xargs 分析到其後接的字串時,會停止繼續工作。
    -p  :在執行每個指令的 argument 時,都會詢問使用者;
    -n  :後面接次數,每次 command 指令執行時,要使用幾個參數。看範例三。
    當 xargs 後面沒有接任何的指令時,預設是以 echo 來進行輸出。