Рейтинговые книги
Читем онлайн Командная строка Linux - Шоттс Уильям

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 76 77 78 79 80 81 82 83 84 ... 113

[[email protected] ~]$ ls /usr/bin | pr -3 -t | a2ps -o ~/Desktop/ls.ps -L 66

[stdin (plain): 11 pages on 6 sheets]

[Total: 11 pages on 6 sheets] saved into the file `/home/me/Desktop/ls.ps'

Здесь мы обработали поток с помощью программы pr, передав ей параметр -t (чтобы опустить верхние и нижние колонтитулы), и передали результат программе a2ps, указав ей файл для вывода (параметр -o) и плотность печати 66 строк на странице (параметр -L), чтобы разбить вывод pr на страницы. Если открыть получившийся файл с помощью соответствующего средства просмотра, можно увидеть, что он выглядит, как показано на рис. 22.1.

Рис. 22.1. Результат работы a2ps

Как видите, по умолчанию используется формат вывода «две страницы рядом». В этом формате содержимое двух страниц будет напечатано на одном листе бумаги. a2ps добавляет также свои хорошо отформатированные колонтитулы.

a2ps имеет множество параметров, они перечислены в табл. 22.4.

Таблица 22.4. Параметры команды a2ps

Параметр

Описание

--center-title текст

Текст для заголовка страницы в центре

--columns число

Число колонок для вывода страниц. По умолчанию 2

--footer текст

Текст для нижнего колонтитула

--guess

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

--left-footer текст

Текст для нижнего колонтитула слева

--left-title текст

Текст для заголовка страницы слева

--line-numbers=интервал

Выводить номера строк через заданный интервал

--list=defaults

Вывести настройки по умолчанию

--list=категория

Вывести возможные варианты настроек для указанной категории, где категорией может быть: delegations (внешние программы, которые будут использоваться для преобразования данных), encodings (кодировки), features (возможности), variables (переменные), media (размеры бумаги и пр.), ppd (известные описания принтеров PostScript), printers (принтеры), prologues (фрагменты кода, предшествующие нормальному выводу), style-sheets (поддерживаемые стили вывода), user-options (параметры пользователя)

--pages диапазон

Печатать страницы из указанного диапазона

--right-footer текст

Текст для нижнего колонтитула справа

--right-title текст

Текст для заголовка страницы справа

--rows число

Разместить страницы в указанное число рядов. По умолчанию 1

-B

Не выводить заголовки страниц

-b текст

Текст заголовка страницы

-f размер

Использовать шрифт указанного размера

-l число

Число символов в строке. Этот параметр и параметр -L (ниже) можно использовать, чтобы правильно разместить на странице файлы, разбитые на страницы с помощью других программ, таких как pr

-L число

Число строк на странице

-M имя

Формат бумаги, например A4

-n число

Вывести указанное число копий каждой страницы

-o файл

Вывести результат в указанный файл. Если в качестве имени файла указан - (дефис), используется стандартный вывод

-P принтер

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

-R

Вывести в книжной ориентации

-r

Вывести в альбомной ориентации

-T число

Установить табулостопы через каждое указанное число символов

-u текст

Текст для нижнего слоя на странице («водяной знак»)

Это далеко не полный список. В действительности программа a2ps имеет намного больше параметров.

ПРИМЕЧАНИЕ

Программа a2ps продолжает активно развиваться и поныне. В ходе ее тестирования я заметил некоторые различия в поведении этой программы в разных дистрибутивах. В CentOS 4 вывод всегда по умолчанию производился в стандартный вывод. В CentOS 4 и Fedora 10 по умолчанию использовался формат бумаги A4, несмотря на то что система была настроена на использование бумаги формата US-Letter. Мне удалось преодолеть эту проблему, только явно передав соответствующие параметры. В Ubuntu 8.04 программа a2ps действует, как описывается в документации.

Кроме того, существует еще одна программа форматирования, которую можно использовать для преобразования текста в формат PostScript. Она называется enscript и способна выполнять почти те же виды форматирования и печати, что и a2ps, но, в отличие от последней, принимает только текстовые данные.

Наблюдение за заданиями печати и управление ими

Поскольку система печати в Unix изначально проектировалась для обработки заданий печати от нескольких пользователей, соответственно и система CUPS проектировалась исходя из той же предпосылки. Для каждого принтера создается своя очередь печати, в которой задания хранятся, пока не будут переданы принтеру. В составе CUPS имеется несколько программ командной строки для управления состоянием принтеров и очередей печати. Подобно программам lpr и lp, эти управляющие программы создавались после появления соответствующих программ из систем Berkeley и System V.

lpstat — вывод информации о состоянии принтера

Программу lpstat удобно использовать для определения имен и доступности принтеров в системе. Например, если к системе подключены два принтера — физический (с именем printer) и виртуальный, для вывода в файлы PDF (с именем PDF), — их состояние можно проверить так:

[[email protected] ~]$ lpstat -a

PDF accepting requests since Mon 05 Dec 2011 03:05:59 PM EST

printer accepting requests since Tue 21 Feb 2012 08:43:22 AM EST

Кроме того, с ее помощью можно получить более подробное описание конфигурации системы печати:

[[email protected] ~]$ lpstat -s

system default destination: printer

device for PDF: cups-pdf:/

device for printer: ipp://print-server:631/printers/printer

В этом примере видно, что имя printer соответствует системному принтеру по умолчанию и что это сетевой принтер, для взаимодействий с которым используется протокол печати через Интернет (Internet Printing Protocol, ipp://), физически подключенный к системе с именем print-server.

В табл. 22.5 перечислены некоторые часто используемые параметры команды lpstat.

Таблица 22.5. Наиболее часто используемые параметры команды lpstat

Параметр

Описание

-a [принтер...]

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

-d

Вывести имя системного принтера по умолчанию

-p [принтер...]

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

-r

Вывести состояние сервера печати

-s

Вывести сводную информацию о состоянии

-t

Вывести полный отчет о состоянии

lpq — вывод информации о состоянии очереди печати

Программа lpq используется для получения информации о состоянии очереди печати. С ее помощью можно увидеть состояние очереди и список заданий в ней. Ниже приводится пример вывода информации о состоянии пустой очереди для системного принтера по умолчанию с именем printer:

[[email protected] ~]$ lpq

printer is ready

no entries

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

1 ... 76 77 78 79 80 81 82 83 84 ... 113
На этой странице вы можете бесплатно читать книгу Командная строка Linux - Шоттс Уильям бесплатно.

Оставить комментарий