Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_раб ОС_5-8.doc
Скачиваний:
8
Добавлен:
04.11.2018
Размер:
559.62 Кб
Скачать
  1. Конструкции языка программирования Shell

Язык программирования shell имеет несколько конструкций, которые придадут гибкость вашим программам:

  • комментарии позволят описывать функции программы;

  • команда exit позволяет завершать программу в нужной точке и использовать коды возврата;

  • конструкции цикла for, while позволяют повторять группу команд в цикле;

  • условные команды if и case выполняют группу команд, если выполнилось некоторое условие;

  • команда break позволяет выполнить безусловный выход из цикла.

    1. Комментарии

Чтобы в программе разместить комментарии, воспользуйтесь знаком #. Если знак # стоит после команды, то сама команда выполняется, а комментарий игнорируется. Формат строки комментария:

#comment<ENTER>

    1. Циклы

Операторы цикла for и while позволяют выполнить команду или последовательность команд несколько раз.

    1. Оператор for

Оператор for выполняет последовательность команд для каждого элемента списка. Он имеет формат:

for переменная<ENTER>

in значения переменной<ENTER>

do<ENTER>

команда_1<ENTER>

последняя команда<ENTER>

done<ENTER>

Для каждой итерации цикла следующий элемент списка присваивается переменной, данной в операторе for. Ссылка на эту переменную может быть сделана в любом месте в командах внутри оператора do. При конструировании каждой секции команд вам необходимо убедиться, что каждому do соответствует done в конце цикла. Переменная может иметь любое имя. Например, если ваша переменная названа var, то ссылка в списке команд на $var сделает значение доступным. Если оператор in опущен, то значением для var будет набор аргументов, заданный в команде и доступный в специальном параметре $*. Список команд между ключевым словом do и done будет выполнен для каждого значения.

Когда команды будут выполнены для последнего элемента списка, программа будет выполнять строку ниже done.

    1. Оператор while

Оператор цикла while использует 2 группы команд. Он будет выполнять последовательность команд во второй группе (список do ... done) до тех пор, пока последняя команда в первой группе (список while) возвращает состояние "истина", означающее, что выражение после do может быть выполнено.

Общий формат оператора цикла while:

while<ENTER>

команда_1<ENTER>

последняя команда<ENTER>

do<ENTER>

команда _1<ENTER>

последняя команда<ENTER>

done<ENTER>

Например, программа enter.name использует цикл while для ввода списка имен в файл. Программа состоит из следующих командных строк:

echo “Введите пожалуйста список имён<ENTER>

echo “после завершения ввода нажмите <Ctrl+D>

while read x

do

echo $x>>xfile

done

echo xfile содержит следующие имена:

cat xfile

Их можно просмотреть, введя команду:

cat enter.name<ENTER>

Обратите внимание, что после завершения цикла программа выполняет команды ниже done.

После того, как цикл завершится, программа распечатает все имена, содержащиеся в xfile.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]