pr — преобразование текстовых файлов для печати
Мы уже касались программы pr в предыдущей главе. А теперь исследуем все богатство ее параметров, используемых при печати. В краткой исторической справке развития технологий печати рассказывалось, что символьные принтеры использовали мноноширинные шрифты, что обеспечивало фиксированное число символов в строке и строк на странице. Программа pr используется для выравнивания текста в соответствии с заданным размером страницы, с учетом дополнительных заголовков и полей на странице. Наиболее часто используемые параметры перечислены в табл. 22.1.
Таблица 22.1. Наиболее часто используемые параметры команды pr
Параметр
Описание
+первая
[:последняя]
Вывести диапазон страниц, начиная со страницы с номером первая и заканчивая страницей с номером последняя (если указано)
-колонок
Вывести содержимое страницы в указанное число колонок
-a
По умолчанию, когда задан вывод в несколько колонок, колонки организованы по вертикали. Параметр -a (across — поперек) позволяет организовать колонки по горизонтали
-d
Вывести с двойным интервалом
-D формат
Формат вывода даты в заголовке страницы. Описание строки формата можно найти в странице справочного руководства (man) для команды date
-f
Использовать символ перевода формата вместо возврата каретки для отделения страниц друг от друга
-h заголовок
Текст для вывода в центре заголовка страницы вместо имени файла
-l длина
Длина страницы. По умолчанию длина устанавливается равной 66 строкам (соответствует формату US-letter с плотностью печати 6 строк на дюйм)
-n
Нумеровать строки
-o отступ
Создать левое поле, выполнив отступ указанного размера (в символах)
-w ширина
Ширина страницы в символах. По умолчанию ширина устанавливается равной 72 символам
Программа pr часто используется в конвейерах в роли фильтра. Следующий пример создает список содержимого каталога /usr/bin и с помощью pr выводит его в три колонки с разбивкой на страницы:
[me@linuxbox ~]$ ls /usr/bin | pr -3 -w 65 | head
2012-02-18 14:00 Page 1
[ apturl bsd-write
411toppm ar bsh
a2p arecord btcflash
a2ps arecordmidi bug-buddy
a2ps-lpr-wrapper ark buildhash