find命令總結

用途:

    find命令用來在文件層級結構中搜索跟條件匹配的文件

語法:

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

    查找起始路徑:指定具體搜索起始路徑。默認為當前目錄

    查找條件:只頂的查找標準,可以根據文件名、大小、類型、權限、從屬關系、時間戳等信息進行查找;默認找出指定目錄下的所有文件

    處理動作:對符合查找條件文件作出的動作,例如刪除等操作;默認為輸出至標準輸出

下面對查找條件和處理動作進行詳細介紹

    1、 查找條件:

        a. 根據文件名進行查找:

            -name "PATTERN":根據文件名進行查找,支持globbing風格的查找,而不是正則表達式。例如?, *, [[:digit:]]等

            iname "PATTERN":根據文件名進行查找,忽略文件大小寫

        b. 根據從屬關系進行查找:

            -user USERNAME:根據文件的屬主進行查找

            -group GROUPNAME:根據文件的數組進行查找

            -uid UID:根據文件屬主的UID進行查找

            -gid GID:根據文件數組的GID進行查找

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

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

        c. 根據文件類型進行查找:

            -type FILETYPE

            FILETYPE:

                -d:查找目錄文件

                -f:查找普通文件

                -l:查找符號鏈接文件

                -s:查找套接字文件

                -p:查找管道文件

                -b:查找塊設備文件

                -c:查找字符設備文件

        d. 根據文件權限進行查找:

            -perm [-|/] mode:

                -perm mode:表示精確查找,文件權限的每一類用戶都匹配權限位。例如:-perm 222,表示u,g,o三類用戶都只是有且僅有文件寫權限

                -perm /mode:任何一類用戶能匹配權限位

                -perm -mode:每一類用戶(u,g,o)的權限的每一次(r,w,x)同時符合條件即可

        e. 根據文件大小進行查找:

            -size [+|-] #UNIT

                常用單位:k, M, G

                -size #UNIT:查找#-1 到 #大小的文件

                -size +#UNIT:查找大于#的文件

                -size -UNIT:查找小于或等于#-1的文件

        f. 根據文件時間戳信息進行查找:

            以天為單位進行查找:

                使用方法:-atime [+|-] #

                    -atime #:查找#天以前被訪問的文件    

                    -atime -#:查找#天以內被訪問的文件

                    -atime +#:查找距訪問時間#天以前的文件

                同理:查找文件修改時間:-mtime [+|-]#。查找文件更改(metadata時間:-ctime [+|-] #

            還可以以分鐘為單位進行查找:-amin | -mmin | -cmin [+|-] #

    

        g. 邏輯組合測試:

            與:-a。默認組合邏輯

            或:-o

            非:-not        

    2、 處理動作

        -print:將搜索結果輸出至標準輸出;默認為此處理動作

        -ls:類似于對查找到的文件執行"ls -l"命令,輸出文件的詳細信息

        -delete:刪除查找到的文件

        -fls /path/to/somefile:把查找到的文件的長格式信息保存至指定文件夾中

        -ok COMMAND {} \; :對查找到的文件執行COMMAND表示的命令,每次都由用戶確認

        -exec COMMAND {} \; :對查找到的文件執行COMMAND表示的命令

示例:

    1、查找/var目錄下屬主為root,且屬組為mail的所有文件或目錄

[root@locahost ~]# find /var -user root -group mail -ls

  

    2、查找/usr目錄下不屬于root,bin或hadoop的所有文件或目錄,兩種方法實現

[root@localhost ~]# find /usr -not \( -user root -user bin -user hadoop \) -ls
[root@localhost ~]# find /usr -not -user root -o -not -user bin -o -not -user hadoop -ls

    

    3、查找/etc目錄下最近一周內起內容修改過,且屬主不是root用戶,也不是hadoop用戶的文件或目錄

[root@localhost ~]# find /etc -atime -7 -not \( -user root -user hadoop \) -ls

    

    4、查找當前系統上沒有屬主或屬組,且最近一周內曾被訪問過的文件或目錄

[root@localhsot ~]# find / -nouser -o -nogroup -atime -7 -ls

    

    5、查找/etc目錄下大于1M切類型為普通文件的所有文件

[root@localhost ~]

    

    6、查找/etc/目錄下所有用戶都沒有寫權限的文件

[root@localhost ~]# find /etc -not -perm /222 -ls

    

    7、查找/etc目錄下至少有一類用戶沒有執行權限的文件

[root@localhost ~]# find /etc -not -perm -111 -ls

    

    8、查找/etc/init.d/目錄下,所有用戶都有執行權限,且其他用戶有寫權限的文件

[root@localhost ~]# find /etc/init.d -perm -113 -ls

    

    

    

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

(0)
mxb93mxb93
上一篇 2016-09-19 13:48
下一篇 2016-09-19 13:48

相關推薦

  • 數組知識與編譯安裝

    數組知識與編譯安裝 一數組知識 1、定義數組    聲明數組: declare -a ARRAY_NAME declare -A ARRAY_NAME:  關聯數組 數組元素的賦值: (1)  一次只賦值一個元素; ARRAY_NAME[INDEX]=VALUE weekdays[0]="Sunday&quo…

    Linux干貨 2016-09-19
  • 第一周作業

    1、描述計算機的組成及其功能。 計算機的基本功能:數據處理、數據存儲、數據傳輸、控制; 計算機中的數據:包含計算機所能處理的給中對象,如數值、字符、圖形、圖像、聲音、視頻等。 計算機的所有功能都是通過指令實現的。 指令:是計算機硬件能直接識別并執行的命令,不同種類的計算機通常有著不同的指令編碼,一臺計算機的所有指令集合稱之為指令系統。若干條指令組成的一個指令…

    Linux干貨 2016-12-12
  • 使用Storm實現實時大數據分析

    摘要:隨著數據體積的越來越大,實時處理成為了許多機構需要面對的首要挑戰。Shruthi Kumar和Siddharth Patankar在Dr.Dobb’s上結合了汽車超速監視,為我們演示了使用Storm進行實時大數據分析。CSDN在此編譯、整理。 簡單和明了,Storm讓大數據分析變得輕松加愉快。 當今世界,公司的日常運營經常會生成TB級別的數據。數據來源…

    Linux干貨 2015-04-04
  • linux運維

    linux運維大綱,學習路線圖

    Linux干貨 2017-10-21
  • 網絡管理基礎-子網劃分及網絡配置練習

    1、某公司申請到一個C 類IP 地址,但要連接6 個的子公司,最大的一個子  公司有26 臺計算機,每個子公司在一個網段中,則子網掩碼應設為?  192.168.100.1 網絡位192.168.100 192.168.100.00000000 C類掩碼255.255.255.0 192.168.100. 000 00001  …

    Linux干貨 2016-09-05
  • Linux的用戶組和權限(一)

    導讀:本章主要內容如下       1.解釋Linux的安全模型      2.解釋用戶賬號和組群賬號的目的      3.用戶和組管理命令      4.理解并設置文件權限 &n…

    Linux干貨 2016-08-04
欧美性久久久久