Командите which, whereis и whatis може да звучат подобно на новодошлия Linux, но са по-различни, отколкото може би си мислите.

Може да сте използвали команди which, whereis и whatis на Linux няколко пъти. И трите команди ви помагат да намерите информация за други команди на Linux. Тези команди изглеждат подобни, но имат някои разлики.

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

Командата which

Някои команди имат множество двоични изпълними файлове, разположени в различни директории. Когато изпълните команда, обвивката търси нейните изпълними файлове в директориите, посочени в променливата на средата PATH.

За да разберете какви директории има в променливата на средата PATH, отворете терминала на Linux и изпълнете следната команда:

ехо $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 катран

Командата какво е

Командата whatis предоставя едноредово описание на дадена Linux команда. Той намира тази информация от страницата на ръководството на командата.

Например, за да разберете какво прави командата tar, изпълнете:

какво е катран

Можете също да намерите информация за множество команди едновременно, като използвате:

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

което срещу където е срещу whatis: Какви са разликите?

Ако търсите пътя на двоичния файл, който се изпълнява при изпълнение на команда в обвивката, използвайте командата which. Като има предвид, че ако търсите изходния код, двоичната и справочната страница за команда, използвайте whereis.

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

Командата which извършва търсене в променливата PATH, докато команда whereis търси стандартни Linux директории, включително $PATH и $MANPATH.

И накрая, командата whatis просто показва едноредово описание на команда.

Намиране на информация за Linux команди

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

Заедно с whatis можете да използвате други команди като apropos, man, info и помощ за получаване на подробна информация и по-добро разбиране на командите на Linux и техните функции.