linux檔案尋找

來源:互聯網
上載者:User

標籤:find   locate   which   whereis   

    linux的核心思想是“一切皆檔案”;所有的裝置、系統配置等都是以檔案形式來儲存,能夠準確的找到檔案,才能夠對該檔案做修改等操作;所以檔案的搜尋、尋找對於系統的維護與管理至關重要

    1、which:尋找可執行檔位置

        which會由PATH定義的路徑中找出系統命令對應的可執行檔位置,並返回第一次找到的結果

    用法:

        which [optinos] Command...

    常用選項:

        -a:列出所有由PATH定義路徑找出的檔案位置

    2、whereis尋找檔案位置

        whereis只能用於程式名的搜尋,而且只能搜尋二進位檔案、man說明檔案和原始碼檔案,預設返回所有資訊

        whereis會從資料庫中尋找,該資料庫並不是即時更新的,預設該資料庫一周更新一次;有時會找到已經被刪除的檔案或者找不到剛建立的檔案

        用法:

            whereis [optinos] [directory] FILENAME...

        常用命令:

            -b:尋找可執行檔

            -m:尋找協助檔案

            -s:尋找原始碼檔案

            -u:搜尋預設路徑下除可執行檔、協助檔案、原始碼檔案以外的其他檔案

            -B:指定搜尋可執行檔的路徑

            -M:指定搜尋協助檔案的路徑

            -S:指定搜尋原始碼檔案的路徑

    3、locate:根據資料庫尋找檔案

        locate是通過update程式將硬碟中的所有檔案先建立一個索引資料庫,在執行locate時直接找索引,查詢速度快,但並非即時尋找;資料庫一般由作業系統管理,系統會在每天通過crontab程式來更新此資料庫,也可以使用updatedb命令手動更新此資料庫

        用法:

            locat [options] [pattern]...

        常用選項:

            -i:忽略大小寫

            -r:使用Regex

            -q:不顯示任何錯誤資訊

    4、find:遍曆尋找

        find在目錄結構中搜尋檔案,並執行指定的操作。find命令提供了相當多的尋找條件,即時尋找,功能強大,因為find是遍曆尋找指定目錄的所有檔案,所以速度慢,消耗資源,因為遍曆一個大檔案系統可能會花費很長的時間

        用法:

            find [PATH] [options] [expression]...

        常用選項:

            -name FILENAME:對檔案名稱做精確匹配,支援檔案名稱通配

            -iname FILENAME:檔案名稱匹配時不區分大小寫

            -regex PATTERN:對檔案名稱匹配時使用Regex

            -user USERNAME:根據檔案屬主尋找

            -group GROUPNAME:根據檔案屬組尋找

            -uid UID:根據UID尋找

            -gid GID:根據GID尋找

            -nouser:尋找沒有屬主的檔案

            -nogroup:尋找沒有屬組的檔案

            -type:根據檔案類型尋找

                d:目錄(directory)

                f:普通檔案(file)

                c:字元裝置檔案(character)

                b:塊裝置檔案(block)

                l:符號連結檔案(symbolic link file)

                p:管道檔案(pipe)

                s:通訊端檔案(socket)

            -size:根據大小尋找(預設大小為位元組)

                [+ | -]#:K,M,G

                    +#M:大於#M的檔案

                    -#M:小於#的檔案

            -mtime:根據修改時間尋找

            -ctime:根據狀態時間尋找

            -atime:根據訪問時間尋找

                [+距現在幾天前 | -距現在幾天以內]#

            -mmin:根據分鐘尋找,表示有多少分鐘訪問過或沒有訪問

            -amin:根據分鐘尋找

            -cmin:根據分鐘尋找

                [+ | -]#

            -perm MODE:根據許可權尋找(使用8進位數字表示)

                MODE:精確匹配

                /MODE:任意一位許可權匹配即符合條件

                -MODE:檔案許可權完全包含此MODE時才符合條件

        組合條件:

            -a:與

            -o:或

            -not:非

        後續處理:

            預設為-print:顯示

            -ls:類似ls -l的形式顯示檔案的詳細資料

            -ok Command {} \;:使用shell命令對尋找到的檔案做後續處理,{}引用找到的檔案

            -exec Command {} \;:同-ok,-ok的每一個操作都需要使用者確認,-exec不需要

            | xargs Command:從標準輸出讀取檔案,比-ok,-exec功能強大,本身可以不適用引用符,也不需要\;結尾

本文出自 “杆兒男” 部落格,請務必保留此出處http://wtime.blog.51cto.com/8829658/1537625

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.