你有沒有試過找到一個命令,程序或應用程序的位置,但不知道在哪裡看?
當然,您可以使用find命令來嘗試找到它,如下所示:
找到/ -name firefox這將返回潛在結果列表,通常您可以通過這種方式找到程序的位置。
您可以使用的另一個命令是locate命令。 例如:
找到Firefox但是,查找程序的最佳方法是whereis命令。
根據手冊頁 :
whereis定位指定命令名稱的二進製文件,源文件和手動文件。 提供的名稱首先被剝離了前導路徑名組件和表單.ext的任何(單個)尾隨擴展名(例如:.c)s的前綴。 源代碼控制的使用所產生的結果也被處理。 然後,Whereis嘗試在標準Linux位置以及$ PATH和$ MANPATH指定的地方找到指定的所需程序。
因此,本質上,whereis命令可以找到源代碼,手冊和程序的位置。
讓我們用Firefox試試吧:
其中firefox上述命令的輸出如下所示:
firefox:/ usr / bin / firefox / usr / lib64 / firefox /usr/share/man/man1/firefox.1.gz如果你只是想找到程序的位置,你可以使用開關-b,如下所示:
其中-b firefox這將返回以下結果:
firefox:/ usr / bin / firefox / usr / lib64 / firefox或者,如果您只想知道手冊的位置,則可以使用-m開關。
其中-m firefox上述命令的結果如下所示:
firefox:/usr/share/man/man1/firefox.1.gz最後,您可以使用-s開關將搜索範圍限制為源代碼。
還有其他交換機可用於whereis命令,包括用於查找不尋常文件的-u。
手冊中提到了關於-u開關的以下內容:
如果一個命令不具有每個明確請求類型的一個條目,就會被認為是不尋常的。 因此,'whereis -m -u *'會詢問當前目錄中沒有文檔文件或多個文件的文件。
基本上,如果您的系統上安裝了多個手冊,或者您正在運行的程序出現在多個位置,它將被退回。
如果您對程序或命令的位置有一個模糊的概念,並且您想要搜索特定的一組目錄,則可以使用-B開關在指定列表中搜索二進製文件。
例如:
whereis -b -B / usr / bin -f firefox上面的命令有幾個部分。 首先是-b開關,這意味著我們只在尋找二進製文件(程序本身)。 -B開關用於提供搜索二進製文件的位置列表,文件夾列表由-f開關終止。 因此,在上面的命令中,唯一搜索的目錄是/ usr / bin。 最後,-f後面的firefox告訴它它在找什麼。
-B開關的另一種選擇是-M,它在特定的文件夾集中搜索手冊。
-M開關的命令行如下所示:
其中-m -M / usr / share / man / man1 -f firefox-M的邏輯與-B的邏輯相同。 -m告訴whereis查找手冊,-M告訴whereis應該查找手冊的文件夾列表即將到來。 -f終止文件列表,firefox是whereis命令要查找手冊的程序。
最後,-S開關可用於列出一組文件夾以搜索源代碼。