首頁 > 運維 > Nginx > 主體

Linux 神秘對決:which vs. whereis vs. whatis

WBOY
發布: 2023-06-09 16:04:56
轉載
640 人瀏覽過

It is possible that you have used the commands which, whereis, and whatis multiple times on Linux.。這三個命令都用於查找關於其他 Linux 命令的資訊。這些命令看起來相似,但它們確實有一些區別。

以下是對 Linux 上 which、whereis 和 whatis 指令的詳細比較。

which 指令

某些指令在不同的目錄中具有多個執行檔。 Shell會在PATH環境變數所指定的資料夾中尋找可執行文件,以執行對應的指令。

要尋找PATH 環境變數中包含的目錄,請在Linux 終端機中執行以下命令:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ echo $PATH
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

小貼士:您也可以手動將目錄加入到您的PATH環境變數。

一旦在Linux中找到了第一個可執行的路徑,shell就會立即執行該路徑。使用 which 指令,您可以確定該執行檔的路徑。

這種情況下會很有用:當您的系統上安裝了兩個具有不同版本的相同程式時,或者安裝了兩個具有相同名稱但不同程式的軟體時。使用 which 指令,您可以找出哪一個會先執行。

以下是which 指令的語法:

which [选项] [命令]
登入後複製

例如,要檢查tar 指令的實際路徑,您可以輸入:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ which tar
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

這個指令會展示tar指令在PATH中的第一個可執行路徑,也就是位於/usr/bin。每次執行 tar 命令時,都會由 shell 執行位於 /usr/bin 目錄中的二進位文件,這就是其意義。

要顯示指令的所有可用可執行路徑,請使用which 指令加上-a 選項:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ which -a tar
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

你也可以同時顯示多個指令的可執行路徑,如下所示:

which [命令1] [命令2] [命令3]
登入後複製

whereis 命令

whereis命令能夠展示與指定命令相關的可執行檔、原始程式碼檔案和手冊頁面文件的路徑。與 which 指令不同,它不僅在 $PATH 中搜尋可執行文件,還在 $MANPATH 和其他預定義位置進行搜尋。

如果沒有任何命令列選項,whereis 命令會顯示命令的二進位檔案、來源檔案和手冊頁面檔案:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ whereis tar
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

要僅顯示二進位文件路徑,請使用-b 選項:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ whereis -b tar
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

要僅顯示來源文件,請使用-s標誌:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ whereis -s tar
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

要只顯示手冊頁面,請使用-m 選項:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ whereis -m tar
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

#whatis 指令

whatis 指令提供了給定Linux 指令的一行說明。它從命令的 man 頁面中獲取這些資訊。

例如,要尋找tar 指令的功能,請執行:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ whatis tar
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

#您也可以同時尋找多個指令的資訊,例如:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ whatis ls cp mkdir cat head
登入後複製

Linux 神秘对决:which vs. whereis vs. whatis

which、whereis 和whatis 之間的差異是什麼?

若您需要尋找 shell 中指令的執行檔路徑,請嘗試使用 which 指令。使用 whereis 指令可尋找指令的來源檔案、二進位檔案和 man 頁面。

whereis 指令列出所有的二進位可執行文件,而 which 指令僅顯示在 shell 中輸入該指令時執行的第一個執行檔。

which 指令在 PATH 變數中進行搜索,而 whereis 指令在標準的Linux目錄中進行搜索,包括 $PATH 和 $MANPATH。

最後,whatis 指令會從指令的 man 頁面中擷取一行簡短的描述。

查找Linux命令的信息

which、whereis 和whatis 命令可以幫助您找到其他Linux 命令的信息,如可執行文件的完整路徑、二進製文件、源文件、手冊頁面以及命令的功能。

除了 whatis 命令,您還可以使用其他命令,例如 apropos、man、info 和 help,以獲得關於 Linux 命令及其功能的詳細資訊和更好的理解。

以上是Linux 神秘對決:which vs. whereis vs. whatis的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:51cto.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板