Архив рубрики: Linux

Составные списки команд интерпретатора Linux: циклы

Последний важный вид составных списков предназначен для многократного циклического выполнения команд в сценариях командного интерпретатора. Различают цикл с параметром, реализуемый конструкцией for name in [words …]; do list; done и циклы о, условием «ПОКА» while [!] list; do list; done и «ДО» unitl [!] list do list; done с ключевыми словами for, in, while, until,… Читать далее »

Составные списки командного интерпретатора Linux: ветвление

Условные списки «И» и «ИЛИ» являются простейшей формой ветвления хода выполнения сценария в зависимости от успеха или неудачи выполнения той или иной команды. При помощи специальной команды test, позволяющей выполнять проверки логических выражений, можно осуществлять ветвление сценария, например, в зависимости от определенных условий или значений тех или иных параметров. Аналогично специальной команде expr, предназначенной для вычисления арифметических… Читать далее »

Условные списки командного интерпретатора Linux

Условные списки команд представляют собой компактные, но достаточно выразительные конструкции, управляющие ходом выполнения сценария. Как указывалось в статье о подстановке параметров, каждая команда имеет статус завершения:— нулевой при успешном выполнении и отличный от нуля при неуспешном. Условный список «И» формируется конструкцией вида command1 && command2 && … и выполняет команды последовательно, запуская очередную команду, только… Читать далее »

Списки команд командного интерпретатора Linux

Перенаправления и подстановки командного интерпретатора позволяют производить различные вычисления, но не разрешают управлять ходом вычислений — выполнять различные действия в зависимости от результата вычислений или циклически повторять вычисления. Для управления ходом выполнения сценариев на языке командного интерпретатора служат списки команд. Простейшие списки формирует пользователь при интерактивной работе с командным интерпретатором, последовательно запуская команды при помощи управляющего… Читать далее »

Экранирование в ОС Linux

Перед запуском введенной команды интерпретатор анализирует ее на наличие так называемых метасимволов, т. е. символов, имеющих специальное значение. Так, например, пробел отделяет аргументы команды друг от друга, шаблонные выражения на основе ?, *, и [] вычисляются в имена файлов, доллар $ активирует подстановку команд, параметров или арифметических выражений, а символы <, >, | — перенаправления… Читать далее »

Подстановки арифметических выражении Linux

Подстановки вывода команд и параметров являются для программирования на языке командного интерпретатора практически самыми важными конструкциями. Например, используя операцию присвоения, подстановку вывода и внешнюю команду expr, предназначенную для вычисления арифметических выражений, можно вычислять значения одних переменных на основе других, как показано в примере из листинга ниже. Нужно отметить, что аргументы команды еexpr отделяются пробелами, как… Читать далее »

Подстановки вывода команд Linux

Еще одним видом подстановок, выполняемых командным интерпретатором, являются подстановки вывода команд. Конструкции вида $(command) (или ее более старая форма ‘command’) используется для подстановки результата вывода команды command на поток STDOUT в место ее использования. Широко распространена подстановка результата работы команды comand2 в качестве аргументов команды command1, используемая в виде command1 $(comand2). Для сравнения, при конвейерной… Читать далее »

Подстановки параметров в ОС Linux

Более важным видом подстановок командного интерпретатора являются подстановки значений параметров — специальных сущностей, имеющих эти самые значения. Различают три типа параметров — переменные, позиционные параметры и специальные параметры. Значения переменных могут быть изменены в любой момент времени при помощи операции присваивания, тогда как значения позиционных параметров задаются один раз при их инициализации, а значения специальных… Читать далее »

Подстановки имен файлов в ОС linux

Еще одной важной способностью командного интерпретатора, необходимой для разработки сценариев, является возможность подставлять различные вычисляемые значения в качестве аргументов запускаемых команд. Простейшими вычисляемыми командным интерпретатором значениями являются имена файлов, соответствующие некоторым шаблонам. Язык шаблонных выражений крайне прост и основывается на понятии метасимволов, т. е. символов со специальными значениями (таблица ниже). Шаблонные метасимволы Метасимвол Значение ?… Читать далее »

Перенаправление потоков ввода-вывода Linux

Для программирования сценариев на языке командного интерпретатора одной из важнейших его способностей является возможность организации сохранения результатов в файлы и возможность считывания исходных данных из файлов при выполнении команд. командный интерпретатор организует перенаправления потоков ввода-вывода внешних и встроенных команд при помощи конструкций [n]>file или [n]>>file и [n]<file. Символы < и > естественным образом идентифицируют направление выполняемых… Читать далее »