Archive for the ‘Субпроекты’ Category.

Немного о bash

В настоящем цикле заметок я собрал всё, что мне представляется важным при использовании bash -- точнее, описание тех её возможностей, которые использую сам, когда мне приходится иметь дело с этой командной оболочкой. Continue reading ‘Немного о bash’ »

. .

POSIX-shell: управление заданиями

Управление заданиями -- одна из важных функций командных оболочек, именно благодаря ей практически реализуется истинная многозадачность Unix-систем. И поэтому она появилась с самого момента их рождения, уже в Shell Борна. Continue reading ‘POSIX-shell: управление заданиями’ »

. .

POSIX-shell: встроенные команды

Как уже неоднократно говорилось, запуск и исполнение команд -- одна из основных задач командной оболочки. Любая из них способна интерпретировать и исполнять любые внешние команды системы. Однако оболочки располагают и собственными средствами -- т.н. встроенными командами (Shell Builtins). Continue reading ‘POSIX-shell: встроенные команды’ »

. .

POSIX-shell: характеристика

Оболочку ash (и практически идентичный ей /bin/sh из FreeBSD) можно рассматривать в качестве POSIX-шелла par excellence. Интерактивные ее возможности проще всего охарактеризовать в сранении с более "продвинутыми" шеллами - и исключительно от противного. Continue reading ‘POSIX-shell: характеристика’ »

. .

POSIX-shell: базовые возможности

Как уже говорилось выше, оболочки, соответствующие стандарту POSIX, не блещут богатством возможностей. Но именно они изображают собой ту печку, от которой начинают танцевать развитые современные шеллы. И потому именно с них мы и начнём. Continue reading ‘POSIX-shell: базовые возможности’ »

. .

Самая главная команда: заключение

Система man-страниц имеет три кардинальных недостатка. Первый, о котором я уже говорил, -- то, что она даст ответ только в том случае, если пользователь знает, как и о чем ее спрашивать. К сожалению, он не устраним. Вернее, устранить его можно только чтением всякого рода вводных стетай и книг (например, этой). А также, конечно, тех же manual'ов -- в попытках постичь заложенную в них сермяжную правду. Уверяю, что момент истины рано или поздно наступит... Continue reading ‘Самая главная команда: заключение’ »

. .

Поиск man-страниц

Обращение к man-страницам позволяет получить практически исчерпывающую информацию по любым командам, но только в том случае, если пользователь знает название той команды, которая требуется в данном случае. А если он только в общих чертах представляет, что это команда должна делать? Continue reading ‘Поиск man-страниц’ »

. .

Навигация по man-странице

С навигационными возможностями команды less можно ознакомиться, нажав клавишу h -- вызов встроенной её помощи. Из которой мы и узнаем, что перемещаться по man-странице можно с помощью управляющих последовательностей, сходным в принципе с теми, с которыми мы ознакомились в соответствующем разделе . Continue reading ‘Навигация по man-странице’ »

. .

Программы-pager’ы

Большинство man-страниц занимают более одного экрана. В этом случае возникает необходимость перемещения по экранам и строкам -- т.е. некоторая навигация. Continue reading ‘Программы-pager’ы’ »

. .

Использование команды man

Для вызова интересующей документации требуется дать команду man с аргументами -- номером группы и именем man-страницы, например: Continue reading ‘Использование команды man’ »

. .

Команда man: общее представление

Команда man предназначена для вызова экранной документации в одноименном формате (Manual Pages, что на Руси ласково переводится как "тетя Маня"). А такая man-документация почти обязательно сопровождает любую уважающую себя программу для POSIX-систем. И устанавливается в принудительном порядке при инсталляции соответствующей программы в любом случае -- разворачивается ли она из бинарного тарбалла или собирается из исходников. Continue reading ‘Команда man: общее представление’ »

. .

Сколько команд в системе?

Для начала -- каким образом можно узнать. какие команды имеют место быть в нашей системе? В первом приближении этому послужит клавиша табуляции: нажав ее в пустой командной строке, мы (в большинстве случаев) получим сообщение вроде такого: Continue reading ‘Сколько команд в системе?’ »

. .

Самая главная команда: вступление

Как как можно догадаться по прочтении предшествующих страниц, команд в Unix'ах -- немерянное количество. В свежеустановленной Linux-системе минималистского типа (вроде CRUX или Archlinux) их может быть штук 500-700, в минимальной установке BSD -- около 800. И это все без учёта Иксов и всяческих приложений. Continue reading ‘Самая главная команда: вступление’ »

. .

Самая главная команда

Эта рубрика посвящена самой главной команде -- man, а также сопутствующим ей материям. Содержание её -- не информация о тех или иных командах, или свойствах системы, а метаинформация: информация о том, как получить нужную информацию. То есть выработке некоторых навыков, которые у истинного POSIX'ивиста должны быть доведены до уровня рефлексов.

  • Вступление
  • Сколько команд в системе?
  • Команда man: общее представление
  • Использование команды man
  • Программы-pager'ы
  • Поиск man-страниц
  • Навигация по man-странице
  • Заключение
. .

Понятие о функциях

И уж совсем в заключение этого раздела осталось сказать пару слов о функциях командной оболочки. Это -- такая же последовательность команд (или даже просто одиночная команда), как и сценарий, но -- не вынесенная в отдельный исполняемый файл, а помещённая в тело другого скрипта. В коем она опознаётся по имени, и может быть выполнена неоднократно в ходе работы этого скрипта. Continue reading ‘Понятие о функциях’ »

. .

Сценарии оболочки. Как?

Создание пользовательского сценария -- просто, как правда. Для этого всего и нужно: Continue reading ‘Сценарии оболочки. Как?’ »

. .

Сценарии оболочки

Наш затянувшийся разговор о командах и командном интерфейсе подходит к концу. Честно говоря, начиная этот раздел, я не думал, что он окажется таким длинным. Но это -- тот самый случай, когда из песни слова не выкинешь. Напротив, очень многое осталось недосказанным или необъясненным. Что ж -- тем больше поводов будет у нас возвращаться к теме команд вновь и вновь. Continue reading ‘Сценарии оболочки’ »

. .

Командные конструкции. Понятие о фильтрах

С понятием командных конструкций тесно связано понятие программ-фильтров. Это -- команды, способные принимать на свой ввод данные с вывода других команд, производить над ними некоторые действия и перенаправлять свой вывод (то есть результат модификации полученных данных) в файлы или далее по конвейеру -- другой команде. Continue reading ‘Командные конструкции. Понятие о фильтрах’ »

. .

Командные конструкции. Конвейеры

Возможности построения командных конструкций не ограничиваются перенаправлением ввода/вывода: результаты работы одной команды могут быть переданы для обработки другой команде. Это достигается благодаря механизму программных каналов (pipe) или конвейеров -- последний термин лучше отражает существо дела. Continue reading ‘Командные конструкции. Конвейеры’ »

. .

Командные конструкции. Перенаправление

Следующая командная конструкция -- это так называемое перенаправление ввода/вывода. Чтобы понять,что это такое, нужно помнить следующее: Continue reading ‘Командные конструкции. Перенаправление’ »

. .