Главная страница

Ответы по экзамену операционные системы. Для удобства


Скачать 191.51 Kb.
НазваниеДля удобства
АнкорОтветы по экзамену операционные системы
Дата29.10.2022
Размер191.51 Kb.
Формат файлаdocx
Имя файлаOtvety_po_OS.docx
ТипДокументы
#761250
страница9 из 14
1   ...   6   7   8   9   10   11   12   13   14

Какие операторы циклов применяются в командных сценариях ОС Unix?


Оператор for

for ПЕРЕМЕННАЯ in ЗНАЧЕНИЯ

do

СЦЕНАРИЙ

done

Конструкция многократно выполняет СЦЕНАРИЙ, последовательно перебирая список значений ЗНАЧЕНИЯ. Каждое значение из списка присваивается переменной с именем ПЕРЕМЕННАЯ.

Следующий сценарий выведет числа построчно:

for var1 in 1 2 3 4 5

do

echo $var1

done

Следующий сценарий выведет список файлов в текущей директории:

for file in *

do

echo $file

done

Если список значений не указан, то будет использован список аргументов текущего сценария:

for arg

do

echo $arg

done

Операторы break и continue позволяют досрочно завершить текущую итерацию цикла: с выходом из цикла и без выхода из цикла соответственно.

Операторы while и until

while УСЛОВИЕ

do

СЦЕНАРИЙ

done

СЦЕНАРИЙ выполняется до тех пор, пока УСЛОВИЕ истинно.

Перебор значений от 10 до 1:

n=10

while [ "$n" -ne 0 ]

do

echo $n

n=`expr $n – 1`

done

Конструкция until имеет аналогичный синтаксис, но в отличие от оператора while проверяет условие на ложность.


  1. Какие способы группирования команд используются в командных сценариях ОС Unix?


Следующие конструкции применяются для объединения различных команд в сложные составные команды:

  • cmd1; cmd2; ...; cmdN – последовательное выполнение команд;

  • cmd1& cmd2& ...& cmdN& – асинхронное выполнение команд;

  • cmd1 && cmd2 && ... && cmdN – последовательное выполнение команд, при котором каждая последующая команда выполняется только тогда, когда предыдущая вернула нулевое значение (выполнена успешно);

  • cmd1 || cmd2 || ... || cmdN – последовательное выполнение команд, при котором каждая последующая команда выполняется только тогда, когда предыдущая вернула ненулевое значение (завершилась с ошибкой);

  • cmd1 `cmd2` – вывод второй команды (отделена знаками обратного апострофа) будет подставлен перед вызовом первой команды.

  • cmd1 | cmd2 | ... | cmdN – конвейер команд, в котором стандартный вывод команды направляется на стандартный ввод последующей команды;


  1. Какие способы перенаправления потоков ввода-вывода используются в командных сценариях ОС Unix?


Следующие конструкции применяются для управления стандартными потоками ввода-вывода:

  • cmd > file – направление стандартного вывода в файл file;

  • cmd >> file – направление стандартного вывода в конец файла file;

  • cmd < file – стандартный ввод выполняется из файла file.


  1. Как в программе осуществляется работа со стандартными вводом и выводом?


Язык С остается традиционным и по сути стандартным языком программирования для ОС Unix. C – фактически прикладной программный интерфейс всех подсистем ОС Unix описан на этом языке.

Пример программы, осуществляющий передачу символов из стандартного ввода на стандартный вывод представлен:

#include

int main() {

char c;

while((c = getchar()) != EOF)

{

putchar(c);

}

return 0;

}


  1. 1   ...   6   7   8   9   10   11   12   13   14


написать администратору сайта