ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
rpl(1)

ЗАМЕЧАНИЯ:
Для пoвтopa ceaнca пocлe cбoя нeoбxoдимo, чтoбы в
cпpaвoчникe "/tmp" были ocтaвлeны фaйлы c имeнaми
"rett*" и "resv*". B имeнa paбoчиx фaйлoв peдaктopa
дoбaвляeтcя имя пoльзoвaтeля, взятoe из пepeмeннoй
"USER", либo нoмep пoльзoвaтeля, ecли этa пepeмeннaя
нe зaдaнa..

ФAЙЛЫ
/tmp/rett*.имя - пpoтoкoл paбoты peдaктopa;
/tmp/resv*.имя - cocтoяниe peдaктopa пpи выxoдe из
нeгo;
/tmp/retm*.имя - paбoчий фaйл.







105
AПK.00210-01 33 01-5

ИМЯ:
refft, crreff - получение таблицы использования иден-
тификаторов.

ФОРМАТ:
refft <список файлов>
crreff <файл>

ОПИСАНИЕ:
Команды refft и crreff служат для получения таблицы
использования идентификаторов в программе или комплек-
се программ на Си. Параметром команды crreff является
имя файла, содержащего исходную программу на языке Си,
если имя файла не задано, читается стандартный ввод.
Команда читает исходный текст программы на Си и выдает
таблицу идентификаторов в следующем формате:

число имя файл строка строка ...

Для каждого идентификатора, выдается "число" вхожде-
ний, его "имя", "файл" и список "строк", в которых он
встречается.

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

ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
ctags

106
AПK.00210-01 33 01-5

ЗАМЕЧАНИЯ:
Команда refft на самом деле является командным файлом
на SHELL и использует команду crreff в специальном ре-
жиме (флаг "-j").














107
AПK.00210-01 33 01-5

ИМЯ:
rev - перевернуть строки файла

ФОРМАТ:
rev [файл]...

ОПИСАНИЕ:
Команда rev копирует указанные файлы в стандартный
файл вывода, меняя на противоположный порядок следова-
ния символов в каждой строке. Если не указан ни один
файл, информация берется из стандартного файла ввода.










108
AПK.00210-01 33 01-5

ИМЯ:
rline - чтение одной строки

ФОРМАТ:
rline

ОПИСАНИЕ:
Команда rline считывает одну строку из стандартного
ввода и выдает ее в стандартный вывод. Команда исполь-
зуется в CSHELL для ввода с терминала, например:

#
echo "Enter devise type set dev=`rline`









109
AПK.00210-01 33 01-5

ИМЯ:
rm, rmdir - yдaлить фaйлы (cпpaвoчники)

ФОРМАТ:
rm [-f] [-r] [-i] [-] файл...
rmdir справочник ...

ОПИСАНИЕ:
Команда rm удаляет из справочника ссылки на один или
несколько файлов.

Если некоторая ссылка является последней ссылкой на
данный файл, этот файл уничтожается. Для удаления
файла из справочника требуется право записи в данный
справочник, но не требуются ни право записи в данный
файл, ни право чтения файла.

Если пользователь не имеет права записи в файл, а
стандартным файлом ввода является терминал, выдается
запрос на подтверждение операции и считывается строка
стандартного ввода. Если эта строка начинается симво-
лом "y", файл удаляется, в противном случае файл оста-
ется. Никакие вопросы не задаются, если задан ключ
"-f".

Если указанный файл является справочником, печатается
сообщение об ошибке. При использовании ключа "-r" ре-
курсивно уничтожаются файлы из этого справочника и сам
справочник.

При указании ключа "-i" (интерактивно) команда rm за-


110
AПK.00210-01 33 01-5

дает вопрос о необходимости удаления каждого файла, а
вместе с ключом "-r" - нужно ли проверять каждый спра-
вочник.

Команда rmdir удаляет ссылки на указанные справочники.
При этом справочники должны быть пустыми.

ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
unlink

ЗАМЕЧАНИЯ:
Могут возникнуть вредные последствия при неумышленном
выполнении чего-нибудь вроде "rm .*"

Глубина вложенности справочников при использовании "rm
-r" не должна быть слишком большой.








111
AПK.00210-01 33 01-5

ИМЯ:
rpl - контекстная замена

ФОРМАТ:
rpl шаблон замена

ОПИСАНИЕ:
Команда rpl считывает строки из стандартного ввода,
заменяет все вхождения строки - первого аргумента на
второй аргумент, и выдает результат в стандартный
вывод. Распознаются регулярные выражения в первом ар-
гументе по тем же правилам, какие действуют в редакто-
ре "ed" в контексте поиска, с тем отличием, что вместо
символа "." для обозначения одного произвольного сим-
вола используется символ "@".

Пример:
rpl "^ *" ":" <a >b

Считывается файл "a", все группы пробелов в начале
строк заменяются на двоеточие, и результат записывает-
ся в файл "b".

Команда rpl предназначена главным образом для кон-
текстной замены в редакторе red, хотя может использо-
ваться и самостоятельно.



112
AПK.00210-01 33 01-5

ИМЯ:
sed - пакетный редактор

ФОРМАТ:
sed [-n] [-e ком.] [-f ком._файл] [файл]...

ОПИСАНИЕ:
Редактор sed переписывает по умолчанию информацию из
файла стандартного ввода в файл стандартного вывода,
изменяя их в соответствии с программой редактирова-
ния.

Если при вызове sed задан аргумент при ключе "-f", то
программа редактирования берется из файла "ком._файл";
файлов с программами редактирования может быть нес-
колько. Если при вызове задан только аргумент при клю-
че "-e" и не задано ни одного аргумента при ключе
"-f", то ключ "-e" может быть опущен. Аргумент при
ключе "-n" указывает файл, в который записываeтся ре-
зультат редактирования. Программа редактирования сос-
тоит из команд, располагающихся по одной на строке, и
имеющих следующий формат:

[адрес [, адрес]] имя_команды [аргументы]

Порядок работы редактора: sed копирует строки из ре-
дактируемого файла в рабочую область, последовательно
выполняя все команды в область действия которых входят
строки, находящиеся в рабочей области; по завершению
программы редактирования рабочая область копируется в

113
AПK.00210-01 33 01-5

стандартный файл вывода (кроме случая, когда задан ар-
гумент при ключе -n). После чего рабочая область унич-
тожается.

Областью действия команды является:

- десятичное число, соответствующее порядковому
номеру введенной строки (без обнуления счетчика
строк при переходе к следующему редактируемому
файлу);

- символ "$" - соответствующий последней строке
редактируемого файла;

- "регулярное выражение" практически полностью
совпадающее с регулярным выражением, применяемым
в ed с тем отличием, что последовательность сим-
волов "0 соответствует символу новой строки,
введенному в рабочую область.

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

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

Если при команде задан диапазон (т.е. два образца,
разделенные запятой), то она применима к первой стро-
ке, которая соответствует первому образцу и всем пос-
ледующим строкам включая строку, соответствующую вто-

114
AПK.00210-01 33 01-5

рому образцу. После этого в следующих строках обраба-
тываемого файла делается попытка снова найти строку,
которая соответствует первому образцу, и процесс пов-
торяется.

Использование команды отрицания "!" приводит к тому,
что следующая за ней команда (зaпиcaннaя нa oднoй c
нeй cтpoкe), пpимeняeтcя тoлькo к тем строкам, кото-
рые не соответствуют указанной области действия.

Аргумент, обозначаемый text, состоит из строк, каждая
из которых, исключая последнюю, заканчивается символом
'/ , необходимым для того, чтобы скрыть escape-
последовательность "новая строка". Символы '/ тракту-
ются редактором либо как символы '/ в замещающей
строке команды s, либо используются для вывода в ре-
зультирующий файл присутствовавших в редактируемом
тексте символов пробела и табуляции (символ '/ должен
стоять перед знаком табуляции или требуемым числом
пробелов); в противном случае пробелы и символы табу-
ляции уничтожаются.

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

(1)a text


115
AПK.00210-01 33 01-5

Добавить. Помещает text в результирующий файл
перед чтением следующей строки редактируемого
файла.

(2)b label
Переход на команду ":" с меткой label. Если
"label" отсутствует, то переходят на конец прог-
раммы редактирования.

(2)c text

Изменить. Команда "с" удаляет строки, выбранные
по заданной области действия, и замещает их
строками аргумента text.

(2)d Уничтожить рабочую область.

(2)D Уничтожить начальный сегмент рабочей области до
первой escape-последовательности "новая строка".

(2)g Заменить содержимое рабочей области содержимым
сохраняемого буфера.

(2)G Добавить содержимое сохраняемого буфера к содер-
жимому рабочей области.

(2)h Заменить содержимое сохраняемого буфера на со-
держимое рабочей области.

(2)H Добавить содержимое рабочей области к сохраня-
емому буферу.

(1)i text


116
AПK.00210-01 33 01-5

Ввести. Поместить text в стандартный файл выво-
да.

(2)n Скопировать рабочую область в стандартный файл
вывода. Заменить рабочую область следующей вво-
димой строкой.

(2)N Добавить следующую вводимую строку к рабочей об-
ласти, содержащей символы "'0. Номер текущей
строки изменится.

(2)p Напечатать. Записать рабочую область в стан-
дартный файл вывода.

(2)P Записать начальный сегмент рабочей области до
первого символа новой строки в стандартный файл
вывод.

(1)q Выйти. Перейти на конец программы редактирова-
ния.

(1)r rfile
Прочесть содержимое rfile. Поместить его в ре-
зультирующий файл перед прочтением новой вводи-
мой строки.

(2)s/ регулярное выражение / замена / флаги
Подставить строку замены из регулярного выраже-
ния вместо соответствующих образцов в рабочую
область. Как и в редакторе ed , вместо символа
'/' может стоять любой символ. Количество флагов

117
AПK.00210-01 33 01-5

может быть любым. Они имеют следующие значения:

g Глобальный. Подставить вместо всех вхожде-
ний несовпадающих регулярных выражений, а
не только вместо первого;

p Распечатать рабочую область при условии,
что подстановка была выполнена;

w file
Записать. Если была проведена замена, до-
бавить к file рабочую область;

(2)t label
Проверить. Если после самого последнего чтения
или исполнения команды t была проведена любая
подстановка перейти на команду ":" с меткой
label. Если метка отсутствует, перейти на конец
программы редактирования;

(2)w file
Записать. Добавить рабочую область к file;

(2)x Поменять содержимое рабочей области на содержи-
мое сохраняемого буфера;

(2)y/строка1/строка2/
Преобразовать. Заменить все вхождения символов,
образующих строку1, на соответствующие символы
из строки2. Длины строки1 и строки2 должны сов-
падать;

118
AПK.00210-01 33 01-5

(2)! команда
Отрицание. Применение команды отрицания "!" при-
водит к тому, что следующая за ней команда (или
группа команд, если командой является {...} ),
записанная на одной с ней строке, применяется
только к тем строкам, которые не соответствуют
указанной области действия;

(0):метка
По этой команде никаких действий не производит-
ся. При этой команде стоит метка на которую пе-
реходят по командам t и b;

(1)= Равенство. По команде "=" в стандартный файл вы-
вода записывается номер строки, имеющей указан-
ную при команде область действия;

(2){ Исполнить следующие команды до символа } только
после выбора рабочей области.

Пустая команда пропускается.

ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ :
ed, grep, awk, lex





119
AПK.00210-01 33 01-5

ИМЯ:
send - передать задание на обработку в ОС ЕС

ФОРМАТ:
send [-ключи] [файл ...]

gath [-ключи] [файл ...]

ОПИСАНИЕ:
Командой send формируется и пересылается файл, содер-
жащий задание для ОС ЕС. Задание должно быть оформлено
в соответствии требований ЯУЗ ОС ЕС. Пересылка файла
задания командой send использует механизм моделирова-
ния устройств единичных записей методом накопления,
режимы действия которого устанавливаются командой МВМ
SPOOL. Таким образом созданный файл команда send пер-
форирует на виртуальном перфокарточном выводе командой
vmpunch в файл накопления для ВМ ОС ЕС.

Состояние задания для ОС ЕС можно получить посредством
использования команды st.

Команда send обеспечивает файл задания в виде сборного
вводного потока из нескольких источников ввода. Воз-
можными источниками ввода являются:

- обычные файлы ДЕМОС;

- стандартный ввод;

- выводные файлы команд ДЕМОС.

120
AПK.00210-01 33 01-5

Формируемый вводной поток направляется send во времен-
ный файл, в котором после замены и подстановки пере-
менных содержится собственно задание ОС ЕС. Указание
действующих опций команды send, источников ввода, а
также действительных значений переменных в образах
карт файла задания осуществляется с помощью внутренних
команд. Строки, начинающиеся с ~, интерпретируются как
внутренние команды, контролирующие выполнение send.
Они могут устанавливать, или повторно устанавливать
список действующих опций, определять зaмeны
пepeмeнныx, oткpывaть новые источники ввода внутри те-
кущего источника.

send управляется следующими внутренними командами:

^-flags
список опций устанавливает режимы функционирова-
ния send;

^+flags
список опций переустанавливает режимы, ранее ус-
тановленные для send;

^+:promt
распечатать подсказку на терминале;

^-:promt
pacпeчaтaть пoдcкaзкy, тoлькo если в качестве
стандартного ввода распределен терминал;

^!command


121
AПK.00210-01 33 01-5

выполнить указанную команду ДEMOC, вызвaв
интepпpeтaтop SHELL. По умолчанию в качестве
файла стандартного ввода определяется /dev/null.
Стандартный вывод команды ДЕМОС определяется в
качестве ввода команды send;

^^comment
используется для возможности комментировать
программу, не попадает в формируемый командой
send ввoднoй пoтoк;

^=:keyword;default
результатом обработки этой внутренней команды
является распределение терминала в качестве
файла ввода, в целях использовать вводную строку
в виде действительного значения ключевого пара-
метра, имя которого указано в команде. Принима-
ется значение пo yмoлчaнию, ecли ввoдитcя пycтaя
cтpoкa;

^keyword=string
замена переменной в ключeвoм oпepaндe;

^file распределить в качестве ввода файл с указанным
именем для формирования вводного потока send;

^*file
распределить в качестве ввода файл с указанным
именем, не производя трансляцию регистра или за-
мещение ключевого слова и считая строки с внут-

122
AПK.00210-01 33 01-5

ренними командами обычным текстом. Единственной
обработкой данных будет проверка на превышение
каждой строкой мaкcимaльнoгo paзмepa;

^?file
распределить в качестве ввода файл с указанным
именем не производя трансляцию регистра или за-
мещение ключевого слова и считая строки с внут-
ренними командами обычным текстом. Единственной
обработкой данных будет их блокирование в
80-бaйтныe зaпиcи;

^==keyword;n
передать следующие n строк из управляющего файла
в вводной поток, если не введено имя переменного
ключевого параметра, или если это имя введено, а
с терминала, распределенного в качестве источни-
ка значений переменных, вводится пустая строка.
n по умолчанию принимает знaчeниe=1;

-uUSER
имя пользователя ДЕМОС, которому распределяются
выводные файлы (по умолчанию используется имя
пользователя, пославшего кoмaндy send);

-cLINK
имя линии в ПДП, на которой распределяется вы-
водной файл (текущее имя по yмoлчaнию 'COMPLEX
1');

123
AПK.00210-01 33 01-5

-l распределить файл стандартного вывода и отобра-
зить на нем образы карт файла зaдaния;

-q не передавать в файле задания операторы ЯУЗ OC
EC;

-f произвести трансляцию cтpoчныx бyкв в пpoпиcныe;

-t воспроизвести в распечатке генерацию операторов
ЯУЗ ОС ЕС перед и после зaмeщeния;

-к выключить замещение ключевых слов для нeyпpaвля-
ющиx cтpoк;

-r выполнить перекодировку кoдa KOИ-8 в ДKOИ;

-е стереть все предыдущие oпpeдeлeния ключeвoгo
cлoвa;

-i нe интepпpeтиpoвaть строки внутренних команд во
включаемых источниках, считая их текстом. Пре-
дупреждение: установленный флаг не пoдлeжит
пepeycтaнoвкe;

-s произвести замещение ключевого слова перед
интepпpeтaциeй yпpaвляющиx cтpoк;

-d вывести на дисплей текущие определения ключевого
слова (используемые пepвoнaчaльнo для oтлaдки).

Командные строки (начинающиеся с ^) в действующем по
умолчанию peжимe +i интepпpeтиpyютcя в качестве команд
управления работой send. Флаг -s обеспечивает опережа-


124
AПK.00210-01 33 01-5

ющую замену ключевых cлoв oтдeлeнию и интepпpeтaции
внутренних команд send. send обычно не содержит специ-
альных символов в командных строках. Однако они допус-
каются. Тогда подсказки, ключевые слова, значения по
умолчанию и строки замены, содержащие специальные сим-
волы должны заключаться в кавычки (" ").

send обеспечивает гибкость формирования операторов ЯУЗ
ОС ЕС на основе составленных заготовок с помощью меха-
низма подсказки и определения ключевых слов. Обычно
send вызывается в командном файле SHELL или в програм-
ме C. В программе производится сборка определений клю-
чевых слов в файл, а затем вызывается send с передачей
имени файла, содержащего эти определения. Файл опреде-
лений ключевых слов остается активным на протяжении
обработки всего входного потока. Так что сканированием
выявляются строки с ключeвыми cлoвaми, кoтopым опреде-
лены значения. Несоответствующие символы выводятся в
том виде, в котором они находятся (или переводятся в
верхний регистр, если установлен флаг -f). Ключевым
параметром является произвольная строка символов в
КОИ-8, для которой была определена строка замещения.
Для наглядности рекомендуется выделять переменные клю-
чевые параметры лидирующим амперсандом (&), хотя это
не обязательно.

Обработкой send переменные ключевые параметры заменя-
ются соответствующей строкой замещений, которая затем
посимвольно выводится. Проверка размера строк (напри-


125
AПK.00210-01 33 01-5

мер по ^*file) откладывается до окончания производства
в ней всех замещений.

Замещение ключевого слова может быть временно выключе-
но путем установки флага -к. Если происходит переопре-
деление ключевого слова, замещается значение замеще-
ния. Предыдущие определения ключевого слова могут быть
полностью стерты путем использования флага -e.

send не проверяет синтаксис генерируемых операторов
ЯУЗ. Однако она проверяет, чтобы размер строки текста
после замещения не превышал 80 байтов. Другими
процедурными ошибками являются: ошибки открытия и за-
писи в файлы, а также аномальные выходы из SHELL.
Ошибки собираются в файл диагностики, а о представле-
нии входного потока заданий на обработку в ОС ЕС send
сигнализирует на терминал утвердительным сообщением.

Когда команда вызывается под именем gath она устанав-
ливает флаг -lq. Результат выполнения заданий в ОС ЕС
можно возвратить в ДЕМОС, используя команду demsend.
Листинг операторов ЯУЗ можно возвратить в ДЕМОС,
Используя карту DEMROUTE.

ФАЙЛЫ:
usr/spool/send *
временный файл для формирования входного потока.

ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ:
sh, st, vmread, demsend

126
AПK.00210-01 33 01-5

ДИАГНОСТИКА:
Отмечается превышение строки входного потока 80 симво-
лов, после подстановки значение переменной ключевого
параметра. Выводится предложение: ввести символ y для
распечатки каких-либо ошибок.













127
AПK.00210-01 33 01-5

ИМЯ:
sendmvt - скопировать файл ДЕМОС в набор данных ОС ЕС.

ФОРМАТ:
sendmvt [демос_файл [ос_ес_файл [файл_вывода]]]

ОПИСАНИЕ:
sendmvs позволяет пользователю копировать файл ДЕМОС
в последовательный набор данных или раздел библиотеки
ОС ЕС. Это осуществляется формированием задания копи-
рования и передачей его в среду пакетной обработки ОС
ЕС.

Параметры команды sendmvt используются в командных
строках, управляющих заменой переменных в ключевых
пapaмeтpax oпepaтopoв ЯУЗ формируемого задания. Способ
их задания может быть явным, в составе команды, или
они вводятся в ответ на подсказку.

Имя "ос_ес_файл" может быть простым или составным, на
основе требований спецификации имен наборов данных ОС
ЕС. Если файл ДЕМОС должен стать разделом библиотечно-
го набора данных, имя раздела указывается за именем
набора в кавычках.

Копирование осуществляется как в уже существующий
набор данных, так и новый набор данных. Поэтому выда-
ется запрос существует-ли уже набор ОС ЕС. Если вво-
дится y, то считается, что набор уже сущетвует и ката-
логизирован в системе ОС ЕС. На ответ n, означающий

128
AПK.00210-01 33 01-5

создание вновь набора, выдается подсказка о необходи-
мости ввести информацию характеристик будущего набора.

"файл_вывода" является именем файла ДЕМОС. Этот файл
будет использоваться утилитой vmread для вывода ре-
зультатов выполнения задания копирования.

ФАЙЛЫ:
/usr/lib/model/sendmvt
образец задания для ОС ЕС

/tmp/sendmvt.*
вpeмeнный yпpaвляющий фaйл send

ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ:re
send ,vmread








129
AПK.00210-01 33 01-5

ИМЯ:
sh, for, case, if, while, :, ., break, continue, cd,
eval, exec, exit, export, login, newgrp, read,
readonly, set, shift, times, trap, umask, wait - ко-
мандный язык.

ФОРМАТ:
sh [-ceiknrstuvx] [пар] ...

ОПИСАНИЕ:
Команда sh вызывает интерпретатор языка управления за-
даниями SHELL, который является основным языком обще-
ния пользователя с системой. Кроме того SHELL очень
широко применяется и в качестве языка разработки прог-
рамм.

КОМАНДЫ:

Простая команда представляет собой последовательность
слов, разделенных "пробелами" (пробелами, знаками та-
буляции или символами новой строки). Первое слово оп-
ределяет имя команды, которая должна быть выполнена.
Остальные слова передаются в качестве параметров вызы-
ваемой команды. Имя команды является нулевым парамет-
ром . "Значением" простой команды является ее код за-
вершения, если она выполнена успешно, или 200+код - в
противном случае.

Несколько команд, разделенных символом "|", представ-
ляют собой канал межпроцессной связи. Информация, вы-


130
AПK.00210-01 33 01-5

даваемая в стандартный файл вывода одной командой,
может передаваться другой команде в качестве стан-
дартного файла ввода. При этом создается цепочка про-
цессов - конвейер. Каждая команда выполняется как от-
дельный процесс; sh ждет окончания трансляции послед-
ней из выполняемых команд.

Список_команд представляет собой последовательность из
одной или нескольких простых команд, разделенных сим-
волами ";", "&", "&&" или "||", и может заканчиваться
символами ";" или "&". Символы ";", "&" и "&&", "||"
попарно имеют одинаковый приоритет, однако, приоритет
пары "&" и "|" ниже, чем у "&&" и "||". Точка с запя-
той, стоящая в конце списка_команд, вызывает последо-
вательное выполнение указанных команд; амперсанд ука-
зывает на то, что следующая команда может быть выпол-
нена без ожидания завершения предыдущей (фоновый про-
цесс). Символ "&&" ("||") разрешает выполнение после-
дующей команды только в том случае, если код заверше-
ния предыдущей равен нулю (не равен нулю). В качестве
разделителей в списках команд вместо точки с запятой
могут использоваться символы новой строки.

Код завершения списка_команд равен значению кода за-
вершения последней простой команды списка.

Последовательность команд можно записать в файл и вы-
полнить, указав имя этого файла. Далее перечислены ос-
новные конструкции командного языка sh.

131
AПK.00210-01 33 01-5

for имя [in слово ...]
do список_команд
done

При каждом повторении цикла for "имя" устанавли-
вается на следующее значение в списке "слово
...". Если конструкция "in слово ..." отсутству-
ет, то по умолчанию предполагается "in $@" (т.е.
цикл выполняется один раз для каждого заданного
параметра).

case слово in
[обр1 [|обр2]...) список_команд;;]
...
esac

При обнаружении соответствия "слова" одному из
образцов, выполняется заданный "список_команд".