find命令

只是爲了整理一下,方便以後查找,本文轉自以下鏈接

https://www.cnblogs.com/tongyan2/p/5517085.html

find顧名思義就是查找,Linux下find命令提供相當多的查找條件,因此功能比較強大,可以在衆多文件或目錄下查找你想要的任何文件或目錄。

find 命令格式:find pathname -options [-print -exec -ok...]

pathname表示find命令所查找的文件或目錄的路徑。例如:/home/tools/tongyan

-print: find命令將匹配的文件輸出到標準輸出。
-exec: find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式爲'command' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更爲安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓用戶來確定是否執行。

find常用命令格式:

-name   filename             #查找名爲filename的文件
-perm                             #按執行權限來查找
-user    username            #按文件屬主來查找
-group groupname           #按組來查找
-mtime   -n +n                #按文件更改時間來查找文件,-n指n天以內,+n指n天以前
-atime    -n +n                #按文件訪問時間來查GIN: 0px">

-ctime    -n +n                #按文件創建時間來查找文件,-n指n天以內,+n指n天以前

-nogroup                        #查無有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser                          #查無有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer   f1 !f2                # 找文件,-n指n天以內,+n指n天以前 
-ctime    -n +n               #按文件創建時間來查找文件,-n指n天以內,+n指n天以前 
-nogroup                       #查無有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser                         #查無有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer   f1 !f2               #查更改時間比f1新但比f2舊的文件
-type    b/d/c/p/l/f         #查是塊設備、目錄、字符設備、管道、符號鏈接、普通文件
-size      n[c]                 #查長度爲n塊[或n字節]的文件
-depth                          #使查找在進入子目錄前先行查找完本目錄
-fstype                         #查更改時間比f1新但比f2舊的文件
-type    b/d/c/p/l/f        #查是塊設備、目錄、字符設備、管道、符號鏈接、普通文件
-size      n[c]                #查長度爲n塊[或n字節]的文件
-depth                         #使查找在進入子目錄前先行查找完本目錄
-fstype                        #查位於某一類型文件系統中的文件,這些文件系統類型通常可 在/etc/fstab中找到
-mount                       #查文件時不跨越文件系統mount點
-follow                        #如果遇到符號鏈接文件,就跟蹤鏈接所指的文件
-cpio                          #查位於某一類型文件系統中的文件,這些文件系統類型通常可 在/etc/fstab中找到
-mount                       #查文件時不跨越文件系統mount點
-follow                        #如果遇到符號鏈接文件,就跟蹤鏈接所指的文件
-cpio                          #對匹配的文件使用cpio命令,將他們備份到磁帶設備中
-prune                       #忽略某個目錄

 

下面具體說明

查找方式有很多種,比如按文件類型(-type),文件名(-name),文件屬主(-user),文件所屬組)(-group),文件權限(-perm),文件長度(-size),文件修改時間(-mtime)等查找。

文件類型包括:d  目錄文件。

                    l  符號鏈接(指向另一個文件,類似於瘟下的快捷方式) 。 
                    s  套接字文件。
                    b  塊設備文件,二進制文件。
                    c  字符設備文件。
                    p  命名管道文件。
                    -  普通文件,或更準確地說,不屬於以上幾種類型的文件。

文件權限包括:r    讀文件

                    w   寫文件

                    x    執行文件操作

(1)按文件類型查找

      find test1 -type d

(2)按文件名查找

   find test1 -name test2

(3)按文件屬主

  find test1 -user wangmengting

(4)按文件所屬組

find test1 -group wangmengting

(5)按文件修改時間

find test1 -mtime -1

其他的就不一一演示了。

注意:那如果查找出來的文件太多,可用以下方式進行顯示。例如:

  -print :將查找到的匹配的文件輸出到標準輸出

    find /home -type f -print

         此外,還可以對文件進行額外的操作。例如:

  -exec :將查找到的文件進行額外的動作

    find /test1 -name “test2.txt” -exec rm {} \;      

    {}:指的是find找到的內容,即找到的結果會被放到{}的位置中;

   -exec 到 \; :是關鍵字代表find額外動作的開始(-exec)到(\;)結束,這中間的就是find指令內的額外動作,在上面例子中就是【 rm {} 】;

   \ :爲轉義字符。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章