find 命令詳解

Find 命令詳解

find

  實時查找工具, 通過遍歷指定路徑完成文件查找;

  工作特點:

    查找速度略慢

    精確查找

    實時查找

可能只搜索用戶具備讀取和執行權限的目錄

 

語法:

  find [OPTION]… [查找路徑] [查找條件] [處理動作]

  查找路徑: 指定具體目標路徑; 默認為當前目錄

  查找條件: 指定的查找標準, 可以文件名、 大小、 類型、權限等標準進行; 默認為找出指定路徑下的所有文件

  處理動作: 對符合條件的文件做操作, 默認動作為標準輸出,輸出至屏幕

 

 

查找條件:

(1)根據文件名和inode查找:

   -name “文件名稱 支持使用glob

      *, ?, [], [^]

   -iname “文件名稱 忽略字母大小寫

   -inum n inode號查找

   -samefile name 相同inode號的文件(其實等于查找硬鏈接,基本不用)

   -links n 鏈接數為n的文件

   -regex “PATTERN” PATTERN匹配整個文件路徑字符串, 而不僅僅是文件名稱

 find 命令詳解

(2)根據屬主、 屬組查找:

   -user
USERNAME
查找屬主為指定用戶(UID)的文件

   -group GRPNAME: 查找屬組為指定組(GID)的文件

   -uid UserID 查找屬主為指定的UID號的文件

   -gid GroupID 查找屬組為指定的GID號的文件

   -nouser 查找沒有屬主的文件或目錄

   -nogroup 查找沒有屬組的文件或目錄

 find 命令詳解

(3)根據文件類型查找:

   -type TYPE:

     f: 普通文件

     d: 目錄文件

     l: 符號鏈接文件

     s 套接字文件

     b: 塊設備文件

     c: 字符設備文件

     p: 管道文件

 find 命令詳解

(4)組合條件:

   與: -a

   或: -o

   非: -not, !

 find 命令詳解

(5)根據文件大小來查找:

   -size

      # 等于多少的文件

     +# 大于多少的文件

     -# 小于多少的文件

    find 命令詳解

(6)根據時間戳:

   以“ 天” 為單位;

     -atime [+|-]#,

         #:
[#,#+1)

         +#:
[#+1,
]

         -#:
[0,#)

     -mtime

     -ctime

   以“ 分鐘” 為單位:

     -amin

     -mmin

     -cmin

 find 命令詳解

(7)根據權限查找:

   -perm

     222 精確匹配有222權限的文件

     -222 u,g,o必須全部符合

     +222 u,g,o有一個符合就行(cen7/222

  find -perm 755 會匹配權限模式恰好是755的文件

  只要當任意人有寫權限時, find -perm +222就會匹配

  只有當每個人都有寫權限時, find -perm -222才會匹配

  只有當其它人( other 有寫權限時, find -perm
-002
才會匹配

 find 命令詳解

處理動作:

  -print 默認的處理動作, 打印至屏幕;

  -ls 類似于對查找到的文件執行“ ls -l”命令

  -delete 刪除查找到的文件;不能刪除非空目錄

  -fls file 查找到的所有文件的長格式信息保存至指定文件中

  -ok
COMMAND {} \;
對查找到的每個文件執行由COMMAND指定的命令;

     對于每個文件執行命令之前, 都會交互式要求用戶確認

  -exec COMMAND {} \; 對查找到的每個文件執行由COMMAND指定的命令

  {}: 用于引用查找到的文件名稱自身

   ;是固定用法

 find 命令詳解

注意:

1find傳遞查找到的文件至后面指定的命令時, 查找到所有符合條件的文件一次性傳遞給后面的命令

   2)有些命令不能接受過多參數, 此時命令執行可能會失敗, 下面方式可規避此問題

        find | xargs COMMAND(生產常用的操作方式)

find 命令詳解

 

原創文章,作者:張 潔,如若轉載,請注明出處:http://www.www58058.com/73030

(1)
張 潔張 潔
上一篇 2017-04-09 22:19
下一篇 2017-04-10 08:24

相關推薦

  • 文件相關命令

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp:copy 源文件:目標文件 單源復制:cp [OPTION]… [-T] SOURCE DEST 如果DEST不存在,則事先創建此文件,并復制源文件的數據流至DEST中 如果DEST存在: 如果DEST是非目錄文件:則覆蓋目標文件 如果DEST是目錄文件:則先在D…

    Linux干貨 2016-09-23
  • 優秀程序員的十個習慣

    在這個世界上,有數百萬的人熱衷于軟件開發,他們有很多名字,如:軟件工程師(Software Engineer),程序員(Programmer),編碼人(Coder),開發人員(Developer)。經過一段時間后,這些人也許能夠成為一個優秀的編碼人員,他們會非常熟悉如何用計算機語言來完成自己的工作。但是,如果你要成為一個優秀的程序員,你還可以需要有幾件事你需…

    Linux干貨 2015-04-01
  • linux 常用命令

    linux   常用命令:      pwd: printing working directory                     顯示工作目錄       cd:cha…

    Linux干貨 2016-10-28
  • N25-第七周作業

    第七周作業 — 1、創建一個10G分區,并格式為ext4文件系統; fdisk /dev/sdanp2enter+10Gwpartx -a /dev/sda(1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;mke2fs -t ext4 -b 2018 -m 2 -L “MYDATA” /…

    Linux干貨 2017-02-25
  • Lua簡明教程

    這幾天系統地學習了一下Lua這個腳本語言,Lua腳本是一個很輕量級的腳本,也是號稱性能最高的腳本,用在很多需要性能的地方,比如:游戲腳本,nginx,wireshark的腳本,當你把他的源碼下下來編譯后,你會發現解釋器居然不到200k,這是多么地變態啊(/bin/sh都要1M,MacOS平臺),而且能和C語言非常好的互動。我很好奇得瀏覽了一下Lua解釋器的源…

    Linux干貨 2016-08-15

評論列表(1條)

  • renjin
    renjin 2017-04-12 11:14

    詳細的總結介紹了find命令的用法,內容很好,建議將命令或代碼塊入到”插入程序代碼”中,文字上注意下縮進

欧美性久久久久