• 當前位置:首頁 > IT技術 > 系統服務 > 正文

    Linux文件查找
    2021-10-15 15:14:04

    文章結構如下

    • locate命令
    • whereis命令
    • which命令
    • find命令

    特殊環境變量——PATH

    PATH 下存放著命令的所有路徑,執行命令的時候會先在 PATH 變量中從前到后挨個路徑查找,每個路徑之間使用冒號分隔。使用如下命令可查看 PATH 路徑。

    echo $PATH
    

    1. locate命令

    locate 命令不搜索具體目錄,而是搜索一個數據庫(/var/lib/locatedb),這個數據庫中含有本地所有文件的信息。Linux系統自動創建這個數據庫,并且每天自動更新一次。要查找最新變動的文件,可以使用 updatedb命令手動更新。

    # 搜索etc目錄下所有以sh開頭的文件
    locate /etc/sh
    
    # 搜索用戶主目錄下所有以m開頭的文件
    locate ~/m
    
    # 搜索用戶主目錄下所有以m開頭的文件,忽略大小寫
    locate -i ~/m
    

    2. whereis命令

    whereis 命令只能用于程序名的搜索,而且只搜索二進制文件(參數 -b),man說明文件(參數 -m)和源代碼文件(參數 -s)。如果省略參數,則返回所有信息。

    whereis grep
    

    3.which命令

    which命令的作用是在PATH變量指定的路徑中,搜索某個系統命令的位置,并返回第一個搜索結果。使用which命令,可以查看某個系統命令是否存在,以及執行的到底是哪一個位置的命令。

    which grep
    

    4.find命令

    find命令是最常見和最強大的查找命令。使用格式如下:

    find <指定目錄> <指定條件> <指定動作>

    • <指定目錄>: 所要搜索的目錄及其所有子目錄。默認為當前目錄
    • <指定條件>: 所要搜索的文件的特征
    • <指定動作>: 對搜索結果進行特定的處理

    如果什么參數都不加,find默認搜索當前目錄及其子目錄,并且不過濾任何結果,返回所有文件。

    # 搜索當前目錄下所有文件名以my開頭的文件
    find . -name 'my*'
    
    # 搜索當前目錄下所有文件名以my開頭的文件,并顯示它們的詳細信息
    find . -name 'my*' -ls
    
    # 搜索當前目錄中過去10分鐘內更新過的普通文件
    find . -type f -mmin -10
    

    其中 find 命令是最慢的,它從硬盤中查找,但它的功能是最強大的。

    本文摘自 :https://www.cnblogs.com/

    開通會員,享受整站包年服務
    国产呦精品一区二区三区网站|久久www免费人咸|精品无码人妻一区二区|久99久热只有精品国产15|中文字幕亚洲无线码