自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

為初學(xué)者介紹Linux whereis命令

系統(tǒng) Linux
有時,在使用命令行的時候,我們需要快速找到某一個命令的二進(jìn)制文件所在位置。這種情況下可以選擇 find 命令,但使用它會耗費時間,可能也會出現(xiàn)意料之外的情況。有一個專門為這種情況設(shè)計的命令:whereis。

[[220604]]

有時,在使用命令行的時候,我們需要快速找到某一個命令的二進(jìn)制文件所在位置。這種情況下可以選擇 find 命令,但使用它會耗費時間,可能也會出現(xiàn)意料之外的情況。有一個專門為這種情況設(shè)計的命令:whereis

在這篇文章里,我們會通過一些便于理解的例子來解釋這一命令的基礎(chǔ)內(nèi)容。但在這之前,值得說明的一點是,下面出現(xiàn)的所有例子都在 Ubuntu 16.04 LTS 下測試過。

 

Linux whereis 命令

whereis 命令可以幫助用戶尋找某一命令的二進(jìn)制文件,源碼以及幫助頁面。下面是它的格式:

  1. whereis [options] [-BMS directory... -f] name...

這是這一命令的 man 頁面給出的解釋:

whereis 可以查找指定命令的二進(jìn)制文件、源文件和幫助文件。 被找到的文件在顯示時,會去掉主路徑名,然后再去掉文件的(單個)尾部擴(kuò)展名 (如: .c),來源于源代碼控制的 s. 前綴也會被去掉。接下來,whereis 會嘗試在標(biāo)準(zhǔn)的 Linux 位置里尋找具體程序,也會在由 $PATH$MANPATH 指定的路徑中尋找。

下面這些以 Q&A 形式出現(xiàn)的例子,可以給你一個關(guān)于如何使用 whereis 命令的直觀感受。

 

Q1. 如何用 whereis 命令尋找二進(jìn)制文件所在位置?

假設(shè)你想找,比如說,whereis 命令自己所在位置。下面是你具體的操作:

  1. whereis whereis

How to find location of binary file using whereis

How to find location of binary file using whereis

需要注意的是,輸出的***個路徑才是你想要的結(jié)果。使用 whereis 命令,同時也會顯示幫助頁面和源碼所在路徑。(如果能找到的情況下會顯示,但是在這一例中沒有找到)所以你在輸出中看見的第二個路徑就是幫助頁面文件所在位置。

 

Q2. 怎么在搜索時規(guī)定只搜索二進(jìn)制文件、幫助頁面,還是源代碼呢?

如果你想只搜索,假設(shè)說,二進(jìn)制文件,你可以使用 -b  這一命令行選項。例如:

  1. whereis -b cp

How to specifically search for binaries, manuals, or source code

How to specifically search for binaries, manuals, or source code

類似的,  -m-s 這兩個 選項分別對應(yīng) 幫助頁面和源碼。

 

Q3.如何限制 whereis 命令搜索位置?

默認(rèn)情況下,whereis 是從由匹配符所定義的硬編碼路徑來尋找文件的。但如果你想的話,你可以用命令行選項來限制搜索。例如,如果你只想在 /usr/bin 尋找二進(jìn)制文件,你可以用 -B 這一選項來實現(xiàn)。

  1. whereis -B /usr/bin/ -f cp

注意:使用這種方式時可以給出多個路徑。使用 -f 這一選項來明確分隔目錄列表和要搜索的文件名。

類似的,如果你想只搜索幫助文件或源碼,你可以對應(yīng)使用  -M-S  這兩個選項。

 

Q4. 如何查看 whereis 的搜索路徑?

與此相對應(yīng)的也有一個選項。只要在 whereis 后加上 -l。

  1. whereis -l

這是例子的部分輸出結(jié)果:

How to see paths that whereis uses for search

How to see paths that whereis uses for search

 

Q5. 如何找到一個有異常條目的命令?

對于 whereis 命令來說,如果一個命令對每個顯式的請求類型都不止一項,則該命令被視為異常。例如,沒有可用文檔的命令,或者對應(yīng)文檔分散在各處的命令都可以算作異常命令。 當(dāng)使用 -u 這一選項,whereis 就會顯示那些有異常條目的命令。

例如,下面這一例子就顯示,在當(dāng)前目錄中,沒有對應(yīng)文檔或有多個文檔的命令。

  1. whereis -m -u *

 

總結(jié)

我覺得,whereis 不是那種你需要經(jīng)常使用的命令行工具。但在遇到某些特殊情況時,它絕對會讓你的生活變得輕松。我們已經(jīng)涉及了這一工具提供的一些重要命令行選項,所以要注意練習(xí)。想了解更多信息,直接去看它的 man 頁面吧。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2018-03-12 19:43:48

Linux命令 ldd

2018-02-10 07:36:20

Linux命令wc

2018-03-12 15:26:00

Linux命令tee

2018-02-23 10:03:30

Linux命令mkdir

2018-02-24 10:38:06

Linux命令rmdir

2018-02-05 08:45:00

RHELCentOS 7MariaDB

2021-08-05 14:40:45

操作系統(tǒng)UNIXLINUX

2009-11-18 09:30:43

2018-04-08 14:47:06

Linux命令type

2012-01-31 21:10:25

Linux初學(xué)者發(fā)行版

2020-06-03 10:00:30

Kubernetes容器開發(fā)

2018-04-16 08:33:39

Linux命令uniq

2014-04-01 10:20:00

開源Rails

2022-09-05 15:36:39

Linux日志記錄syslogd

2022-11-16 16:02:59

Linux命令

2009-11-17 15:33:26

PHP數(shù)組元素

2011-04-12 10:13:24

2018-04-02 11:59:04

Linux命令ln

2013-04-23 10:51:15

Linux壓縮

2012-05-22 14:38:04

點贊
收藏

51CTO技術(shù)棧公眾號