Изучаем терминальные команды

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

Terminal

В OS X встроен очень мощный инструмент для работы с Маком и его тонкой настройки — служебная программа Терминал. Она имеет интерфейс командной строки и работа с ней осуществляется посредством ввода текстовых команд. Существуют тысячи терминальных распоряжений, но в первое время работы с этой программой просто непонятно, где про них найти информацию. Конечно, существуют такие основополагающие команды, как «ls», для отображения списка содержимого директории или «cd» для её смены, но помимо них существуют и текстовые редакторы, и синтаксические анализаторы и множество других команд, превращающиюх Терминал в таинственный (но при этом по-прежнему мощный) инструмент управления Маком.

Если вы только-только начали знакомиться с этой утилитой, может оказаться полезным пополнение своего запаса используемых команд. Существует множество ресурсов (например, BSD Unix command summary), дающих краткое описание основным задачам. Можно ознакомиться с ними и выбрать полезные для себя. Другой способ улучшить знание Терминала — просмотреть весь список доступных команд, прочитать подробное описание к интересующим и запомнить условия их использования. Существуют также немало возможностей осуществить задуманное, мы упомянем наиболее удобные «двойной Tab ⇥» и команду «compgen»:

  • Введите любой интересующий вас текст в Терминале и дважды (или однократно, в зависимости от контекста) нажмите клавишу Tab ⇥ на клавиатуре. Программа может запросить подтверждение на демонстрацию доступных команд, согласитесь. Если не вводить вообще никакого текста, Терминал предложит показать список всех доступных команд.Вообще клавиша Tab ⇥ очень функциональна в этой служебной утилите, при вводе команды, например, вы можете только начать её набор и нажать озвученную клавишу, Терминал допишет окончание команды самостоятельно. Та же хитрость работает и при указании файлового пути, можно набирать только начало, например «/Sys…», Tab ⇥ закончит набор до «/System/».
  • Команда «compgen» также очень проста в обращении. Просто введите в Терминале нижеследующий код и утилита отобразит вам отсортированный в алфавитном порядке список доступных команд:
    compgen -ca
    Вы можете сохранить его в отдельный текстовый файл (например, на рабочем столе), изучение которого можно будет продолжить в будущем в простейшем текстовом редакторе Textedit. Для этого вводится следующая команда:
    compgen -ca > ~/Desktop/commands.txt

Отлично. Со списком доступных команд определились. Теперь вам может потребоваться дополнительная информация: что та или иная команда выполняет, её синтаксис, список достпупных атрибутов. Для полного руководства по эксплуатации терминального распоряжения используется «man», для просмотра основной выжимки для чего она предназначена используется «whatis». Например, в отличии от команды «diskutil» (в написании которой уже скрыто её назначение), по внешнему виду «xattr» совсем непонятно, когда она задействуется. Запрос справки
whatis xattr
в этом случае очень помогает, в коротком тексте выдаётся простейшее описание: «Display and manipulate extended attributes».

Стоит оговориться, что если «whatis» никак не хочет у вас запускаться, имеет смысл запустить более длинную команду «/usr/libexec/makewhatis».

Ну и в заключение приведём четыре способа просмотра руководств по командам.

  1. Руководство по программе «man»
    Команда «по умолчанию» для запроса мануала. Синтаксис простейший :
    man название_запрашиваемой_команды
    Например, всё для той же «xattr» запрос руководства будет выглядеть так:
    man xattr
    Навигация по справке осуществляется стрелками (←,→,↑,↓) или клавишами F и B (для перехода к следующей и предыдущей странице соответственно). Выход из справки — Q.
  2. Команда «xman»
    Если на вашем Маке установлен XQuartz или система управления окнами X11 от Apple (распространялась вплоть до OS X Lion), то вам доступен, ага, Икс-Мэн. Введите
    xman
    в Терминале или запустите «xman» в программе XQuartz (или X11), по умолчанию размещённых в папке «Утилиты» или «Служебные программы» на вашем Маке. Здесь отображаются всё те же мануалы, но навигация по ним осуществляется чуточку легче и с возможностью просмотреть доступные команды.XQuartz 2

    XQuartz
    Внешний вид запущенной XQuartz

  3. Интернет
    Существует достаточно большое количество ресурсов в интернете, где тоже возможно подчерпнуть необходимую информацию. Попробуйте в поиске задать всё ту же «man xattr» и вы наверняка найдёте искомую информацию. Для разработчиков ПО к Макам существует отдельная библиотека, в которой присутствует раздел со всеми руководствами.
  4. Программы сторонних разработчиков
    Последний предлагаемый нами вариант получить необходимую информацию заключается в использовании программ сторонних разработчиков. Например, OnyX содержит полноценный браузер всех руководств. Также как в X11, здесь можно легко и быстро просмотреть необходимую информацию в привычном виде с удобной навигацией, отдельно стоит упомянуть возможность сохранить документ в виде PDF и просмотреть потом, например, на мобильном устройстве с iOS.OnyX
    OnyX

    Как всегда благодарим Тофера Кесслера за оригинальную статью и рекомендуем также просмотреть информацию о «тонкой» настройке «man» в Терминале.

О Дмитрий Кирьянов

Старший инженер технической поддержки одного из известных в Мак-сообществе авторизованного Apple сервис-центра.
Метки , , . Закладка постоянная ссылка.