linux常用查找工具

一.常用查找工具介紹

1clocate

基於數據庫的查找。基於效率而言locate要快,但不夠精確

2.find

基於文件目錄下的實時查找。基於基於精確度而言,find會跟好一點,但就是稍顯慢了。

二.find命令的使用

  • -name 根據文件名(區分大小寫)
  • -iname 忽略大小
  • -lname 鏈接文件

注:根文件名是如果有空格或*要加“”

支持正則的全路徑查找

  • -user 根據文件屬主查找
  • -group 根據文件屬組查找
  • -nouser -nogroup

查找沒有屬主或屬組的文件

  • 多個命令時默認是相與的關係

find /etc  -user root   -name “*passwd”

     =find /etc  -user  root   -a   -name   “*passwd”

-o :表示“或”

-not:表示“非”

默認優先順序: not—>a--->o

  • -perm
    • -perm mode 精確匹配
    • -perm   /mode  只要有一位匹配即可
    • perm   -mode   三類權限中每類至少有一位匹配
    • 位爲0表示忽略
  • -uid  根據uid查找
  • -gid  根據gid查找
  • -type  根據文件類型
    • f 文件
    • d  目錄
    • l  鏈接
    • b  塊設備
    • c 字符設備
    • p  管道
    • s  socket 文件
  • -size  根據文件大小
    • b:512
    • c:byte
    • k:bb
    • M:mb
    • G:gb
    • -:小於
    • +:大於
  • atime 根據時間天 訪問時間
  • mtime  修改時間
  • ctime  改動時間
    • +n:表示n天以前的
    • -n:表示n天以內的
  • amin 根據時間分的
  • mmin
  • cmin
    • +n:n分前的
    • -n:n分內的
  • -newer  更接近現在的

三.find查找於exec或ok的配合使用

  1. exec:接find的輸出結果分條輸出時不與用戶交互
  2. ok:接find的所有結果後分條在輸出,每輸出一條就會詢問用戶是否輸出。

        例如:find –name “*.sh”  -exec  ls –l  {}   \;

   注:{}:表示佔位符。

         每條命令都要以\;結束。

   3..爲防止find輸出地數據太多在傳向exec或ok時溢出,我們使用xargs

     例如:find –name  “*.sh” |xargs  ls –l

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