中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Linux文件查找工具find全解讀

      時間:2024-08-14 22:53:35 Linux認證 我要投稿
      • 相關推薦

      Linux文件查找工具find全解讀

        一、文件查找工具常用軟件

        locate:

        locate命令其實是find -name的另一種寫法,但是要比后者快得多,原因在于它不搜索具體目錄,而是搜索一個數據庫/var/lib/locatedb,這個數據庫中含有本地所有文件信息。Linux系統自動創建這個數據庫,并且每天自動更新一次,所以使用locate命令查不到最新變動過的文件。為了避免這種情況,可以在使用locate之前,先使用updatedb命令,手動更新數據庫。

        find:

        find命令用來在指定目錄下查找文件,通過遍歷指定的目標目錄,實時查找符合指定屬性的文件。可以結合正則表達式(REGular EXPressio)來匹配模式。

        二、軟件常用參數及使用方式

        locate:

        使用格式:locate [OPTION]… PATTERN…

        常用參數:

        -i:忽略大小寫

        實例:

        過濾/etc/下以sh開頭的文件

        # locate /etc/sh

        /etc/shadow

        /etc/shadow-

        /etc/shells

        find:

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

        查找路徑:默認為當前路徑;

        查找條件:默認為指定路徑下的所有文件;

        處理動作:默認為打印至屏幕;

        1、查找路徑

        默認為當前路徑,可以指定系統內的任意路徑,但不建議使用/

        2、查找條件

        (1)基本查找條件

        a、用戶、用戶組及文件名查找

        -name “文件名”:文件名支持使用globbing

        glob:文件名通配;快速引用多個文件;文件名整體匹配度檢測;

        元字符:基于元字符可編寫匹配模式(pattern);

        *:匹配任意長度的任意字符;

        ?:匹配任意單個字符;

        [ ]:匹配指定集合內的任意單個字符;

        [a-z], [A-Z]:不區分字符大小寫;

        [0-9]

        [a-z0-9]

        [[:upper:]]:所有大寫字母;

        [[:lower:]]:所有小寫字母;

        [[:digit:]]:所有的數字;

        [[:alpha:]]:所有字母;

        [[:alnum:]]:所有字母和數字;

        [[:space:]]:空白字符;

        [[:punct:]]:標點符號;

        [^ ]:匹配指定集合外的任意單個字符;

        實例:

        # find /etc -name "passwd*"

        -iname “文件名” 不區分大小寫

        實例:

        # find /tmp -iname "*yum*"

        /tmp/yum.log

        /tmp/YUM.LOG

        # find /tmp -name "*yum*"

        /tmp/yum.log

        -user USERNAME:根據屬主查找

        -group USERNAME:根據屬組查找

        實例:

        # find /var -user root -o -group mail

        -uid UID:根據指定UID查找

        -gid GID:根據指定GID查找

        實例:

        # find /tmp -uid 3323 -ls

        2346806 0 -rw-rw-r-- 1 mageedu mageedu 0 Mar 10 09:36 /tmp/mageedu

        2346812 0 -rw-rw-r-- 1 mageedu mageedu 0 Mar 10 09:36 /tmp/testfile

        -nouser:查找沒有屬主的文件

        -nogroup:查找沒有屬組的文件需

        -nouser與-nogroup參數主要用在當公司員工離職后,雖然賬戶刪除,但是他所有權限的文件還存在,并且以UID的形式來標識屬主與屬組,既當有uid有這個用戶相同時就會可以查看此文件,所以需要刪除此類文件。

        實例:

        # find /tmp -nouser -nogroup -ls

        2346806 0 -rw-rw-r-- 1 3323 3323 0 Mar 10 09:36 /tmp/mageedu

        2346812 0 -rw-rw-r-- 1 3323 3323 0 Mar 10 09:36 /tmp/testfile

        b、文件類型查找

        -type TYPE: 根據文件類型查找

        f: 普通文件

        d: 目錄文件

        l: 符號鏈接文件

        b: 塊設備

        c: 字符設備文件

        p: 命令名管道文件

        s: 套接字文

        實例:

        # find /tmp -type d -ls

        c、文件大小

        -size [+|-]#UNIT:

        常用單位有:k, M, G

        #UNIT: #-1

        2k指1k-2k

        -#UNIT:x

        -2k:指0k-1k

        +#UNIT: x > #

        +2k:指2k到正無窮

        實例:

        # find /etc/ -type f -size +1

        d、時間戳查找

        以“天”為單位

        -atime [+|-]#

        -mtime [+|-]#

        -ctime [+|-]#

        #: 例如:今天為3月10日,3就是3月7日到3月8日(注意天是24小時制)

        -#: 例如:今天為3月10日,-3就是三天內指,3月7日的現在時間到現在的時間。

        +#: 例如:今天為3月10日,+3就是三天前之前指,3月7日前

        以“分鐘”為單位

        -amin [+|-]#

        -mmin

        -cmin

        實例:

        # find /etc -not -user root -not -user hadoop -mtime -7

        # find / -nouser -nogroup -atime -3

        e、權限查找

        根據權限查找:

        -perm [+|-]MODE

        MODE: 與MODE精確匹配

        +MODE:任何一類用戶的權限只要能包含對其指定的任何一位權限即可;

        -MODE:每一類用戶的權限都包含對其指定的所有權限;

        #這里是指包含,例如:-444 指在屬主、屬組、其他用戶中只要包含讀權限就可以。

        實例:

        # find /etc/init.d/ -perm -113 #此處指所有用戶都有執行權限,其他用戶有寫權限的文件或目錄

        # find /etc/ -type f -not -perm +222 #此處指所有用戶都沒有寫權限

        (2)組合查找條件

        組合查找條件:

        與:-a, 查找條件1 -a 查找條件2 -a …

        所有條件必須同時滿足

        或:-o, 查找條件1 -o 查找條件2 -o …

        滿足其中一個條件即可

        非:-not, !

        -not 查找條件

        實例:

        # find / ( -nouser -o -nogroup ) -a -atime -3

        # find /etc/ -not ( -user root -o -user hadoop ) -a -mtime -7

        3、處理動作

        -print: 默認動作,打印至屏幕;

        -ls: 顯示找到的文件的詳細屬性;

        -exec COMMAND {} ;

        -ok COMMAND {} ;

        #exec與ok的區別:ok會提供交互式,讓你確認。而exec則不需要;

        實例:

        # find /tmp -iname "*yum*" -type f -ls

        134 0 -rw-r--r-- 1 root root 0 Mar 10 09:32 /tmp/yum.log

        137 0 -rw-r--r-- 1 root root 0 Mar 10 09:32 /tmp/YUM.LOG

        # find /tmp -iname "*yum*" -type f -exec ls -l {} ;

        -rw-r--r-- 1 root root 0 Mar 10 09:32 /tmp/yum.log

        -rw-r--r-- 1 root root 0 Mar 10 09:32 /tmp/YUM.LOG

        # find /tmp -iname "*yum*" -type f -exec echo {} >>/tmp/test.file ;

        # find /tmp -iname "*yum*" -type f -ok echo {} >>/tmp/test.file \;

        ? y

        ? y

      【Linux文件查找工具find全解讀】相關文章:

      Linux文件查找命令find和xargs詳解09-29

      Linux文件系統簡介06-01

      Linux下程序的Profile工具01-24

      Linux忽略大小寫查找技巧08-12

      常用的Linux網絡工具08-02

      linux下etc/fstab文件的簡介10-23

      Linux btrfs文件系統及管理07-31

      Linux概念架構解讀201610-15

      Linux文件系統操作命令大全07-03

      Linux中的more命令解讀202405-06

      主站蜘蛛池模板: 亚洲成人激情在线影院| AV无码系列一区二区三区| 区。| 日本高清一区二区不卡视频| 免费国产一级片内射老| 古交市| 阳朔县| 果冻国产一区二区三区| 98精品国产高清在线xxxx| 日韩美无码一区二区三区| 精精国产xxx在线视频app| 万宁市| 鄯善县| 国产在线看不卡一区二区| 亚洲视频在线观看青青草| 日韩av在线不卡观看| 日韩AV无码乱伦丝袜一区| 无码AV无码免费一区二区| 国产一区二区三区高清视频| 泸定县| 美姑县| 菏泽市| 久久一区av蜜桃人妻| 天全县| 宜宾县| 商都县| 日韩丝袜人妻中文字幕| 桐庐县| 读书| 亚洲国产一区久久yourpan| 石楼县| 99久久综合狠狠综合久久一区| 宝应县| 太谷县| 日韩中文字幕在线乱码| 安国市| 亚洲大片中文字幕久久| 人妻少妇精品一区二区三区| 经典女同一区二区三区| 人妻系列无码专区久久五月天 | 亚洲av偷拍一区二区三区|