Archive for the ‘Консоль и шеллы’ Category.
Март 18, 2011, 14:42
Основные управляющиеся клавиши, которые используются в таких последовательностях (и имеются на клавиатурах почти любых машин -- как говорят в таких случаях, в любых типах терминалов) -- это клавиши Control и Meta. Continue reading ‘Управляющие последовательности’ »
. .
Март 18, 2011, 14:38
Имя команды, ее опции и аргументы образуют т.н. командные "слова". В качестве словоразделителей выступают пробелы. Кроме того, как разделители "слов" интерпретируется ряд специальных символов -- прямой слэш (/
) -- элемент пути к файлу, обратный слэш (\
), служащий для экранирования специальных символов, и операторы командных конструкций, о которых будет сказано ниже. Continue reading ‘Навигация и редактирование’ »
. .
Март 18, 2011, 14:32
Переменные играют для аргументов команд примерно такую же роль, что и псевдонимы -- для команд. То есть избавляют от необходимости мрачного ввода повторяющихся последовательностей символов. Конечно, это -- далеко не единственное (а может быть, и не главное) назначение переменных, однако на данном этапе для нас наиболее существенное. Continue reading ‘Переменные’ »
. .
Март 18, 2011, 14:28
Вернемся на минуту к команде ls
. У читателя может возникнуть вполне резонный вопрос: а если я всегда хочу видеть ее вывод в цвете, да еще с символическим различением типов файлов, да еще в "длинном" формате? Ну и без вывода скрытых файлов мне никак не прожить. И что же -- мне каждый раз вводить кучу опций, чтобы получить столь элементарный эффект? Continue reading ‘Псевдонимы’ »
. .
Март 18, 2011, 14:23
Итак, типичная форма POSIX-команды в обобщенном виде выглядит следующим образом: Continue reading ‘Кое-что об исключениях’ »
. .
Март 18, 2011, 14:21
Для правильного построения аргументов команды требуется рассмотрение ещё одного понятия -- пути к файлу. Путь -- это точное позиционирование файла в файловой системе относительно ее корня (обозначаемого символом прямого слэша -- /
) или нашего в ней положения -- текущего каталога (который, напомню, символически обозначается единичной точкой -- .
). Continue reading ‘Пути к файлам’ »
. .
Март 18, 2011, 14:17
Таким образом мы подобрались к понятию аргументов командной директивы. Аргументами определяется, как правило, объект (или объекты) действия команды. В большинстве случаев в качестве аргументов команд выступают имена файлов и (или) пути к ним. Continue reading ‘Аргументы’ »
. .
Март 18, 2011, 13:46
Опции определяют условия выполнения команды. На предыдущей странице был приведён пример команды ls
без опций. Однако на самом деле отсутствием опций при ней определяется вид выводимого списка по умолчанию -- как многоколочночного списка, состоящего из имен файлов без учета т.н. скрытых файлов (а таковыми являются файлы, имена которых начинаются с символа точки, почему они еще называются dot-файлами), без каких-либо их атрибутов и без визуального различения файлов различных типов. Continue reading ‘Пример: опции команды ls’ »
. .
Март 18, 2011, 13:45
Как уже говорилось, указания имени достаточно для выполнения некоторых команд. Типичный пример -- команда ls
(от list), предназначенная для просмотра имен файлов (строго говоря, содержимого каталогов). Данная без аргументов, она выводит список имен файлов, составляющих текущий каталог, представленный в некоторой форме по умолчанию, например, в домашнем каталоге пользователя это будет выглядеть примерно так: Continue reading ‘Опции’ »
. .
Март 18, 2011, 13:44
Для правильного применения команд, конечно же, нужно знать их имена и назначение. Однако нас никто не заставляет напрягать пальцы вводом имени команды полностью. Потому что тут на помощь приходит великий метод автодополнения. Continue reading ‘Автодополнение’ »
. .
Март 14, 2011, 15:44
Основой командного интерфейса является командная строка, начинающаяся с приглашения для ввода. Далее он будет обозначаться милым сердцу россиянина символом длинного зеленого друга -- $
, если речь идёт о сеансе обычного пользователя, или символом решётки -- #
, для приглашения строки в сеансе администратора. Continue reading ‘Командная строка’ »
. .
Март 14, 2011, 15:40
Мир FOSS не обделён визуальными, или графическими (по нашему, по бразильскому, -- Гуёвым) интерфейсами. Однако роль CLI от этого меньше не становится. Ибо CLI а) исконен в Unix'ах, б) универсален, и в) представляет собой базу, для которой GUI всякого рода являют лишь оболочку. Continue reading ‘Введение в CLI’ »
. .
Март 14, 2011, 15:36
На протяжении всей книги нам неоднократно приходилось говорить о командах, а некоторые даже использовать на практике. Потому что командный интерфейс (интерфейс командной строки, Command Line Interface, он же CLI) -- это очередная вечная истина POSIX-мира, постижение которой позволит пользователю эффективно взаимодействовать с системой. Continue reading ‘Интерфейс командной строки. Вступление’ »
. .
Март 14, 2011, 14:12
Из приведенного краткого обзора можно видеть, что в плане шеллов выбор пользователя достаточно обширен. А ведь я остановился только на самых распространенных. Однако рискну предположить, что большинство начинающих пользователей Linux'а об этом не особо задумываются. Ведь во всех его дистрибутивах в качестве общесистемного шелла и пользовательского шелла по умолчанию принят bash
, обладающий как развитыми средствами интерпретации, так и продвинутыми интерактивными возможностями, да еще при сохранении совместимости со стандартом. Так зачем, казалось бы, искать добра от добра? Continue reading ‘Вопрос выбора’ »
. .
Март 14, 2011, 11:12
Поведение конкретного экземпляра шелла того или иного вида определяется, кроме принадлежности к одному из описанных семейств, также и файлами его конфигурации. Практически все широко используемые шеллы, которые упомянуты в предыдущем разделе, имеют минимум два конфига -- т.н. профильный файл (profile
), считываемый при запуске login shell (сиречь главного пользовательского шелла), и rc
-файл, из которого берутся настройки любого шелла интерактивного. Continue reading ‘Принципы конфигурирования’ »
. .
Март 14, 2011, 10:50
Большая часть командных оболочек делится, на основе синтаксиса интерпретируемого ими языка, на две группы -- sh- и csh-совместимые. На самом деле различия между ними синтаксисом команд не исчерпываются, а лежат глубже -- в подходе к обработке командных конструкций, к чему мы ещё вернёмся. Continue reading ‘Какие бывают шеллы’ »
. .
Март 14, 2011, 10:11
Шелл (Shell), именуемый по-русски командной оболочкой, командным интерпретатором, командным процессором или иными, столь же неизящными словосочетаниями, -- это первая программа, с которой сталкивается пользователь любой POSIX-совместимой ОС. И с ним же последним он расстаётся, выходя из системы. Continue reading ‘О шеллах вообще’ »
. .
Март 14, 2011, 09:15
Перефразируя классиков советской фантастики, можно сказать, что жизнь дает POSIX'ивисту три радости: дружественный шелл, любимый текстовый редактор и много, очень много приложений для работы. Без любой из первых двух радостей прожить можно. Но это значит, что радостей будет одной меньше. А ведь их всего три. Так что эту главу я посвящаю первой из радостей - шеллам. Тем более, что это еще и первое приложение, с которым сталкивается пользователь после авторизации в системе. Continue reading ‘Командные оболочки. Вступление’ »
. .
Февраль 4, 2011, 23:45
В заключение рассказа о текстовой консоли -- о службе консольной мыши. За работу мыши в консольном режиме отвечает программа-демон /usr/sbin/moused
. Обычно поддержка мыши включается в стартовом файле /etc/rc.conf
. Однако это можно (а иногда и нужно) сделать и вручную, например, после реинициализации системы переходом в однопользовательский режим. Ведь, как уже говорилось, по возврате в режим многопользовательский не все стартовые сервисы активизируются автоматически, и демон консольной мыши -- в их числе. Continue reading ‘Консоль FreeBSD. Служба консольной мыши’ »
. .
Февраль 4, 2011, 23:45
Именно на специальных клавишах можно начать упражнения по переопределению
"умолчальных" значений скан-кодов. Continue reading ‘Консоль FreeBSD. Переопределяем клавиши’ »
. .