Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_ПСРВ.doc
Скачиваний:
26
Добавлен:
12.02.2016
Размер:
1.6 Mб
Скачать

2. Упражнения

УПРАЖНЕНИЕ 2.1.

Загрузите ОС QNX и войдите в систему. Все задания необходимо выполнять с помощью перенаправления и конвейера

1) Создайте два экземпляра текстового файла с помощью команд cat и tee. Проверьте с помощью команды ls -F их наличие.

2) Соедините два полученных файла в один.

УПРАЖНЕНИЕ 2.2.

1) Отсортируйте полученный файл по нескольким критериям, выводя результаты на экран. Повторите операцию, сохраняя результаты сортировки в файлах.

2) Сохраните в файлах 5 начальных и 5 последних строк текста.

3. Содержание отчёта

  1. Номер практической работы.

  2. Название и цель работы.

  3. Краткая характеристика основных команд, использующих стандартный ввод-вывод; определение конвейера в среде ОС QNX.

  4. Примеры использования рассмотренных команд и результат выполнения упражнений 2.1-2.2.

Справочная информация

tee    ответвление канала   

Синтаксис

 

tee [опции]... [файл]...

Описание

 

Команда tee переписывает стандартный ввод на стандартный вывод и делает копии в файлах. Признаком окончания ввода является комбинация клавиш Ctrl+D.

Опции

 

-a  

добавлять выводимую информацию в файлы, а не переписывать их с начала.

cat    слияние и вывод файлов  

Синтаксис

 

cat [-опции] файл ...

Описание

 

Команда cat по очереди читает указанные файлы и выдает их содержимое на стандартный вывод. Так, например,

cat f

распечатывает содержимое файла f, а

cat f1 f2 > f3

сливает первые два файла и помещает результат в третий. Чтобы добавить файл f1 к файлу f2, надо выполнить команду

cat f1 >> f2

Если не указан ни один файл или среди аргументов встретился -, команда cat читает данные со стандартного ввода.

Опции

 

-b

Нумеруются непустые строки файла.

-s

Нумеруются все строки файла. (Поле номера отделяется от текста символом табуляции).

-v

Визуализация непечатных символов. Управляющие символы изображаются в виде ^X (CTRL+X); символ DEL (восьмеричное 0177) - в виде ^?. Символы, не входящие в набор ASCII (то есть с восьмым битом, установленным в 1) выдаются в виде M-x, где x - определяемый младшими семью битами символ.

С опцией -v можно использовать следующие опции:

-t

Визуализация символов табуляции в виде ^I.

-e

Визуализация символов перевода строки в виде $ (строка при этом все же переводится).

Если опция -v не указана, то опции -t и -e игнорируются.

Диагностика

Команды типа

cat f1 f2 > f1

приводят к сообщению:

cat: input/output files 'f1' identical

 

more   поэкранный просмотр текста файла

Синтаксис

 

more [-опции] [-число] [+/шаблон] [+номер] [файл ...]

Описание

 

Команда more осуществляет вывод на экран текста файла. После каждого заполнения экрана команда делает паузу и выводит на нижней строке экрана сообщение типа:

--More-

После этого сообщения пользователь может вводить команды интерактивного режима.

Чаще всего команда more применяется в конвейере с другими командами для того, чтобы обеспечить поэкранный просмотр выдачи, не помещающейся на одном экране, например:

ls -l | more

Опции

 

-число  

задается число, используемое в качестве размера окна (в строках), по умолчанию - 22.

+номер  

задается номер строки, с которой начинается вывод.

-d  

вывод сообщения после каждого экрана.

-с  

вывод каждого нового экрана с предварительной очисткой экрана.

-l  

если не задана эта опция, команда more останавливается после любой строки, содержащей Ctrl-L, до тех пор, пока экран не заполнится до конца.

-p  

вывод каждого нового экрана с верхней строки без предварительной очистки экрана.

-s  

отображение нескольких пустых строк как одной.

+/шаблон  

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

Команды интерактивного режима

После каждой остановки команда more ожидает ввода пользователем команд интерактивного режима. Интерактивные команды more базируются на редакторе vi. Основные интерактивные команды more:

 

<Enter>  

вывод следующих строк файла, число строк - установлено по умолчанию; начальное значение умолчания - 1, команда число изменяет значение по умолчанию.

<пробел>  

вывод следующего экрана.

число  

вывод числа следующих строк файла, изменение числа строк по умолчанию.

 

sort   сортировка и/или слияние файлов

Синтаксис

 

sort [опции...] [файл...]

Описание

 

Команда sort выводит строки всех заданных файлов, отсортированные в лексикографическом порядке. Опции могут изменять порядок сортировки.

Если имена файлов не указаны, или в качестве файла указан символ -, исходная информация поступает со стандартного ввода.

Опции

 

+поз1 -поз2 

применять ключ сортировки, начиная с позиции после поз1, до позиции поз2 (включительно); если поз2 не задано - до конца строки. Позиция кодируется как n[.m], где n - номер поля, m - номер символа в поле (по умолчанию - 0). Например, для сортировки по первому полю эти опции должны быть заданы как: +0 -1. Полем называется минимальная последовательность символов, за которой следует разделитель полей или перевод строки. По умолчанию символом-разделителем считается пробел или символ табуляции.

-с 

не сортировать файл, а только проверить, является ли он уже отсортированным.

-f 

преобразовывать малые буквы в большие.

-m 

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

-M 

сравнивать как месяцы: "JAN" < "FEB" < ... < "DEC" (малые буквы преобразуются в большие). Остальные 3-символьные сочетания считаются меньшими, чем "JAN".

-n 

числовое сравнение: начальные пробелы отбрасываются, затем цифровые цепочки символов (возможно, содержащие знак минус и десятичную точку) сравниваются как числа.

-o файл 

результат направляется не на стандартный вывод, а в файл.

-r 

сортировка в обратном порядке.

-tсимвол 

задание символа - разделителя полей.

-u 

из всех совпадающих строк выводить только одну.

 

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

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

 

head   вывод первых строк файла  

Синтаксис

 

head [опции...] [файл...]

Описание

 

Команда head выводит в стандартный вывод первые строки файла (по умолчанию - 10 строк).

Опции

 

-cразмер  

выводятся первые размер байт файла; размер может иметь префикс: b - блоки по 512 байт, k - Кбайт, m - Мбайт.

-nстрок  

выводятся первые строк строк файла.