Найти тему

Linux. Немного о командах.

Оглавление

Давайте еще немного поговорим о командах, которые есть в Linux. Рассмотрим их со стороны типизации.

Команда может быть:

  • Выполняемой программой, это скомпилированные программы, написанные на разных языках программирования, или даже с помощью сценариев. Главное отличие таких программ - это уже готовый исполняемый продукт. Обычно такие программы находятся в каталоге /usr/bin
  • Встроенной командой. Многие командные оболочки, такие как bash, zsh, tsch и т.д. имеют свои встроенные команды, например cd.
  • Функцией командной оболочки - это такие маленькие сценарии на языке, поддерживаемой текущей командной оболочкой.
  • Псевдонимом - или их еще называют алиасы (alies). Такие команды мы можем сделать сами из других команд.

Узнать к какому типу относится команда можно с помощью cледующей команды.

type

Основное назначение этой команды, это определять тип команды. Синтаксис ее следующий:

$type команда

Давайте посмотрим на примеры использования.

-2

В первом случае команда type сообщает нам, что она является встроенной в командную оболочку. Во втором, мы можем увидеть, что команда ls является псевдонимом. И при вызове команды ls, мы ее вызываем с параметром --color=auto. В третьем случае, узнаем, что cp - является выполняемой командой, расположенной в /usr/bin/cp.

В системах Linux, в очень редких случаях, может иметься более одной версии исполняемой программы. И тут нам приходит на помощь следующая команда.

which

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

$which команда

Давайте рассмотрим следующие примеры

-3

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

Вот мы и разобрались с тем, как определить что за команда перед нами. Теперь попробуем выяснить, что же, а главное как команды что-то делают.

Справка.

В ОС Linux есть несколько способов получить информацию по командам (поисковики и мой дзен в расчет не беру :-)).

Во первых это man, как ей пользоваться обсуждалось в статье Linux. Ищем нужную информацию. Поэтому на нем сейчас подробно останавливаться не буду.

Во вторых help, здесь конечно информации бывает поменьше, но обычно ее хватает. Ну и не со всеми командами help работает.

В третьих, многие команды поддерживают параметр --help. С помощью этого параметра можно иногда получить описание синтаксиса и параметров для этих команд.

В четвертых, команда info. Эта команда вызывает info-страницы, это достойная альтернатива man-страницам. Главное преимущество комнады info, это наличие гиперссылок с помощью которых можно перемещаться по справке. Гиперссылку можно узнать по наличию звездочки в начале строки. Если перейти на эту строку и нажать enter, то можно сразу перейти к интересующей вас информации.

Ну и в пятых, файлы readme и другие файлы с описанием программ. Обычно это текстовые файлы, которые можно просмотреть, например, с помощью команды less или HTML-страницы, их можно открыть в браузере.

Еще, кстати, в Linux есть возможность найти справочные страницы по заданному термину. В этом нам поможет следующая команда.

apropos

Работа команды apropos заключается в поиске и выводе списка подходящих команд. Хоть это и не точный поиск, но иногда помогает. Ниже пример работы этой команды.

-4

Первое слово в каждой строке это имя команды. В скобках указано номер раздела, к которому относится команда. Далее идет краткое описание для команды. Кстати вызов команды man с параметром -k делает тоже самое.

Заключение.

В этой статье немного разобрались в том, как узнать что за тип команды, что она делает, и как она это делает. Надеюсь информация была полезна.

От вас жду комментарии, что не понятно, о чем бы хотелось еще узнать. А пока подписывайтесь на мой канал. И про телеграмм тоже не забываем.