Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Переадресация ввода-вывода



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

Основным устройством для организации взаимодействия пользователя и ЭВМ в системе UNIX является терминал. Для упрощения работы многие утилиты ОС UNIX используют терминал как стандартное устройство ввода-вывода. Стандартным считается устройство, по отношению к которому в программе применены принятые в ОС соглашения.

Несмотря на то, что стандартный ввод-вывод в UNIX закреплен за терминалом (рис. 8.1), SHELL обладает свойствами, позволяющими выполнять переадресацию стандартного ввода-вывода. Эти средства относятся к числу наиболее важных характеристик ЭВМ.

Рис. 8.1. Стандартный ввод-вывод

Символ > означает, что стандартный вывод команды направляется в файл, имя которого указывается в следующем слове (рис. 8.2)

Станд. ввод

Рис. 8.2. Переадресация вывода

Аналогично можно осуществить переадресацию и ввода (рис. 8.3). Стандартно программа вводит информацию с терминала, но можно ее читать и из обычного файла.

файл
Станд. вывод

Рис.8.3. Переадресация ввода

Можно осуществить одновременно переадресацию и ввода, и вывода (рис. 8.4).

Рис. 8.4. Переадресация ввода-вывода

Конвейер служит для объединения стандартного вывода одной программы со стандартным выводом другой. Конвейер и переадресация ввода-вывода − различные средства операционной системы. Если при переадресации информация читается или пишется в файл, то конвейер непосредственно соединяет вывод одной программы с вводом другой.

Конвейер − это соединяющее средство между стандартным выводом одной программы и стандартным вводом другой программы (рис. 8.5).

prog 1| prog 2

Рис. 8.5. Конвейер

В операционной системе ЮНИКС осуществляется и объединение переадресации ввода-вывода и конвейера.

prog 1< file 1| prog 2> file 2 осуществляет переадресацию ввода prog 1 на файл file 1, переадресацию вывода prog 2 на файл file 2 и соединяет вывод prog 1 с вводом prog 2 (рис. 8.6).

Рис. 8.6. Совмещение переадресации ввода-вывода с конвейером

Программа, считывающая данные со стандартного устройства ввода, выполняющая определенную обработку этих данных и записывающая результат в поток стандартного вывода, называется фильтром. Вертикальная черта |, используемая для переадресации вывода одной программы в UNIX как ввода другой, называется символом канала. Этот символ означает, что вывод одной программы должен использоваться в качестве входа другой, что позволяет обойтись без явного указания shell создать временный файл, а затем удалить его. Набор команд, соединенных символом канала называется конвейером и может содержать произвольное количество команд.





Дата публикования: 2014-11-03; Прочитано: 356 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...