国产宅男网站在线|亚洲A级性爱免费视频|亚洲中精品级在线|午夜福利AA毛

  • <dd id="gf5jf"><th id="gf5jf"></th></dd>

    <cite id="gf5jf"><label id="gf5jf"></label></cite>
  • <div id="gf5jf"><listing id="gf5jf"></listing></div>
    學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

    linux下find(文件查找)命令的用法總結(jié)

    時間: 志藝942 分享

      每一種操作系統(tǒng)都有成千上萬的文件組成,對于linux這樣“一切皆文件”的操作系統(tǒng)來說更不例外,大家應(yīng)該都能很輕松使用windows下的文件查找功能,但是對linux這一功能可能并不是很熟悉,其實想玩linux的你更要牢牢掌握這個命令,因為linux不像windows那樣有固定的文件名后綴,并且因為linux陣營下百家爭鳴的特性,接下來是小編為大家收集的linux下find(文件查找)命令的用法總結(jié),歡迎大家閱讀:

      linux下find(文件查找)命令的用法總結(jié)

      Linux下查找文件的命令有兩個;locate 和 find

      首先說下locate,locate這個命令是對其生成的數(shù)據(jù)庫進(jìn)行遍歷(生成數(shù)據(jù)庫的命令:updatedb),這一特性決定了用locate查找文件速度很快,但是locate命令只能對文件進(jìn)行模糊匹配,在精確度上來說差了點,簡單介紹下它的兩個選項:

      #locate

      -i //查找文件的時候不區(qū)分大小寫 比如:locate –i passwd

      -n //只顯示查找結(jié)果的前N行 比如:locate -n 5 passwd

      下面重點說下find,find在不指定查找目錄的情況下是對整個系統(tǒng)進(jìn)行遍歷查找

      使用格式 : find [指定查找目錄] [查找規(guī)則] [查找完后執(zhí)行的action]

      [指定查找目錄]例如:

      這里要注意的是目錄之間要用空格分開

      [查找規(guī)則]

      (1)根據(jù)文件名查找

      # -name //根據(jù)文件名查找(精確查找)

      # -iname //根據(jù)文件名查找,但是不區(qū)分大小寫

      這里另外介紹下文件名通配的知識

      *表示 通配任意的字符

      ?表示 通配任意的單個字符

      [ ] 表示 通配括號里面的任意一個字符

      (2),根據(jù)文件所屬用戶和組來查找文件

      # -user //根據(jù)屬主來查找文件

      # -group //根據(jù)屬組來查找文件

      (3),根據(jù)uid 和 gid來查找用戶

      #find /tmp -uid 500 //查找uid是500 的文件

      #find /tmp -gid 1000 // 查找gid是1000的文件

      (4),-a and -o and –not的使用

      # -a 連接兩個不同的條件(兩個條件必須同時滿足)

      # -o 連接兩個不同的條件(兩個條件滿足其一即可)

      # -not 對條件取反的

      (5),根據(jù)文件時間戳的相關(guān)屬性來查找文件

      我們可以使用stat命令來查看一個文件的時間信息 如下:

      #-atime

      #-mtime

      #-ctime

      #-amin

      #-mmin

      #-cmin

      所以這里atime,mtime,ctime就是分別對應(yīng)的“最近一次訪問時間”“最近一次內(nèi)容修改時間”“最近一次屬性修改時間”,這里的atime的單位指的是“天”,amin的單位是分鐘

      #find /tmp –atime +5 //表示查找在五天內(nèi)沒有訪問過的文件

      #find /tmp -atime -5 //表示查找在五天內(nèi)訪問過的文件

      (6),根據(jù)文件類型來查找文件

      -type

      f // 普通文件

      d //目錄文件

      l //鏈接文件

      b //塊設(shè)備文件

      c //字符設(shè)備文件

      p //管道文件

      s //socket文件

      (7),根據(jù)大小來查找文件

      -size

      #find /tmp -size 2M //查找在/tmp 目錄下等于2M的文件

      #find /tmp -size +2M //查找在/tmp 目錄下大于2M的文件

      #find /tmp -size -2M //查找在/tmp 目錄下小于2M的文件

      (8),根據(jù)文件權(quán)限查找文件

      -perm

      #find /tmp -perm 755 //查找在/tmp目錄下權(quán)限是755的文件

      #find /tmp -perm +222 //表示只要有一類用戶(屬主,屬組,其他)的匹配寫權(quán)限就行

      #find /tmp -perm -222 //表示必須所有類別用戶都滿足有寫權(quán)限

      (9),-nouser and -nogroup

      #find / -nogroup –a –nouser //在整個系統(tǒng)中查找既沒有屬主又沒有屬組的文件(這樣的文件通常是很危險的,作為系統(tǒng)工程師的我們應(yīng)該及時清除掉)

      [查找完執(zhí)行的action]

      # -print //默認(rèn)情況下的動作

      # -ls //查找到后用ls 顯示出來

      # -ok [commend] //查找后執(zhí)行命令的時候詢問用戶是否要執(zhí)行

      # -exec [commend] //查找后執(zhí)行命令的時候不詢問用戶,直接執(zhí)行

      這里要注意{}的使用:替代查找到的文件

      #find /tmp -atime +30 –exec rm –rf {} \; #刪除查找到的超過30天沒有訪問過文件

      我們也可以使用xargs來對查找到的文件進(jìn)一步操作

      
    看了“linux下find(文件查找)命令的用法總結(jié)”還想看:

    1.Linux find命令常見用法匯總

    2.Linux下如何使用find命令指定目錄查找文件

    3.Linux find命令常見用法

    3083397