Команды which, whereis и whatis могут показаться новичкам в Linux, но они отличаются больше, чем вы думаете.

Возможно, вы использовали команды which, whereis и whatis в Linux несколько раз. Все три команды помогают найти информацию о других командах Linux. Эти команды выглядят одинаково, но у них есть некоторые отличия.

Вот подробное сравнение команд which, whereis и whatis в Linux.

Какая команда

Некоторые команды имеют несколько двоичных исполняемых файлов, расположенных в разных каталогах. Когда вы запускаете команду, оболочка ищет ее исполняемые файлы в каталогах, указанных в переменной среды PATH.

Чтобы узнать, какие каталоги находятся в переменной окружения PATH, открыть терминал в линуксе и выполните следующую команду:

эхо $PATH

Вы также можете вручную добавьте каталог в переменную среды PATH.

Когда оболочка находит первый исполняемый путь, она выполняет его. Используя команду which в Linux, вы можете определить путь к этому исполняемому файлу.

Это полезно в случаях, когда в вашей системе установлены две разные версии одной и той же программы или две разные программы с одинаковым именем. С помощью команды which вы можете узнать, какой из них будет выполнен первым.

instagram viewer

Вот синтаксис команды which:

который [опция] [команда]

Например, чтобы проверить фактический путь смола команду, вы должны ввести:

какая смола

Эта команда отобразит первый путь к исполняемому файлу, т.е. /usr/bin найден для команды tar в PATH. Это означает, что всякий раз, когда вы запускаете команду tar, оболочка выполняет двоичный файл, расположенный в /usr/bin каталог.

Чтобы отобразить все доступные пути к исполняемому файлу для команды, используйте команду which с параметром вариант:

который - деготь

Вы также можете отобразить исполняемые пути для нескольких команд одновременно, например:

который [команда1] [команда2] [команда3]

Команда whereis

Команда whereis отображает путь к двоичным файлам, исходным файлам и файлам страниц руководства, связанным с указанной командой. В отличие от команды which, она ищет исполняемый файл не только в $PATH, но также в $MANPATH и других предопределенных местах.

Без каких-либо параметров командной строки команда whereis отображает двоичные файлы, исходные файлы и файлы страниц руководства для команды:

где деготь

Чтобы отобразить только путь к двоичному файлу, используйте вариант:

где -b деготь

Чтобы отобразить только исходный файл, используйте флаг:

где -s деготь

Чтобы отобразить только страницу руководства, используйте кнопку вариант:

где -m tar

Команда Whatis

Команда whatis предоставляет однострочное описание данной команды Linux. Он находит эту информацию на справочной странице команды.

Например, чтобы узнать, что делает команда tar, запустите:

что такое смола

Вы также можете найти информацию о нескольких командах одновременно, используя:

что такое ls cp mkdir кошачья голова

который против. где vs. whatis: в чем отличия?

Если вы ищете путь к двоичному файлу, который запускается при запуске команды в оболочке, используйте команду which. Принимая во внимание, что если вы ищете исходный код, двоичный файл и справочные страницы для команды, используйте whereis.

Команда whereis перечисляет все двоичные исполняемые файлы, а команда which отображает только первый исполняемый файл, который запускается при вводе указанной команды в оболочке.

Команда which выполняет поиск в переменной PATH, а команда whereis выполняет поиск в стандартных каталогах Linux, включая $PATH и $MANPATH.

Наконец, команда whatis просто отображает однострочное описание команды.

Поиск информации о командах Linux

Команды which, whereis и whatis помогают найти информацию о других командах Linux, например полный путь к исполняемым файлам, двоичным файлам, исходным кодам, страницам руководства и функциональным возможностям команды.

Наряду с whatis вы можете использовать другие команды, такие как apropos, man, info и help, чтобы получить подробную информацию и лучше понять команды Linux и их функции.