Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Перенаправление потока ввода.Содержание книги Поиск на нашем сайте
Переадресация стандартного ввода осуществляется конструкцией < для DOS и UNIX и 0> только для UNIX. Пример использования переадресации (ввод данных программой по умолчанию производится с клавиатуры, и обработанная ею информация выводится на экран): program < indata.dat >> outdata.txt В данном примере входные данные программы program читаются из файла indata.dat и записываются в файл outdata.txt. В примере: sort < mylist > prn данные из файла mylist сортируются стандартной программой MS-DOS sort и результат выводится на принтер. Конвейерная обработка. Символы переадресации очень удобны, но иногда бывает необходимо организовать последовательность программ, выполняющих обработку информации, причем результат редыдущей программы является исходным для следующей. При этом промежуточные данные желательно никуда не записывать. Чтобы организовать такую обработку, используют знак '|' конвейера. Команды-"цепочки" такой обработки данных просто записываются в одну строку в порядке их вызова для обработки данных, и отделяются одна от другой знаком конвейера '|'. Пример: sort < mylist | more. В этом примере данные из файла mylist сортируются программой sort и постранично выводятся на экран программой more. В UNIX тоже возможна переадресация потока с одновременным выводом данных на экран, и даже переадресация на два разных устройства. Для переадресации стандартного вывода в файл с одновременной выдачей информации на экран используется команда tee. Например, команда cat в UNIX позволяет просматривать файл. Следующая конструкция: cat first | tee second копирует файл first в файл second, одновременно показывая его на экране. Перенаправление вывода на принтер. Для вывода данных на принтер используются конструкции: в DOS > prn в UNIX lpr Еще один пример: команда cat first | tee second | lpr копирует файл first в файл second, одновременно распечатывая его на принтере. Командой lpr можно также вывести несколько файлов на печать. Подробности смотри ниже. История возникновения потоков в MS-DOS. Исторически первая версия MS-DOS основывалась на многоплатформенной операционной системе для восьмиразрядных процессоров - CP/M. От нее она унаследовала и способ работы с файлами - через контрольные блоки файлов (File Control Block, FCB). Но уже во второй версии MS-DOS стала использоваться позаимствованная из операционной системы UNIX работа с файлами через дескрипторы файлов (File Handle). Одновременно с реализацией метода дескрипторов файла в MS-DOS из UNIX перешел поточный механизм организации файлов и возможность перенаправления потоков. с тех пор работа с файлами через FCB стала анахронизмом и поддерживается в операционных системах фирмы Microsoft (вплоть до Windows 98) лишь для совместимости со старыми версиями. Следует также отметить, что термины "FCB", "дескрипторы файлов", "потоки" употребляются применительно к интерфейсу операций ввода/вывода операционных систем, а не для файловых систем как таковых. Так, использование для работы с файлами метода дескрипторов может происходить и в операционной системе MS-DOS с файловой системой FAT, и в Windows 2000 с NTFS, и в Novell NetWare с NWFS, и в Linux с NFS! Резюме. Итак, в этом разделе Вы кратко познакомились с понятием потока, дескриптора файла в интерфейсе ввода/вывода операционных систем, а также научились перенаправлять потоки операционных систем. Понятие потока тесно связано с понятиями "буфер ввода/вывода" и "кэширования диска". Об этих понятиях уже говорилось во втором выпуске данной серии. В этой части объяснилось назначение этих элементов. Также Вы познакомились с понятием "конвейер" и правилами его использования. Напоследок приводим таблицы, в которой кратко приводятся данные, описанные в этом разделе.
|
||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-02-05; просмотров: 405; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.179.96 (0.005 с.) |