Чтение онлайн

на главную

Жанры

Командная строка Linux
Шрифт:

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

Отправка задания печати на принтер

Пакет программ печати CUPS поддерживает два метода печати, исторически используемых в Unix-подобных системах. Первый метод, с названием Berkeley, или LPD (используется в BSD-версиях Unix), основан на использовании программы lpr; второй метод, с названием SysV (используется в версиях Unix System V), основан на использовании программы lp. Обе программы работают

примерно одинаково. Выбор той или иной зависит от личных предпочтений.

lpr — печать файлов (в стиле Berkeley)

Программа lpr применяется для отправки файлов на принтер. Она также может использоваться в конвейерах, так как способна принимать исходные данные со стандартного ввода. Например, напечатать предыдущий результат форматирования содержимого каталога в несколько колонок можно было бы так:

[me@linuxbox ~]$ ls /usr/bin | pr -3 | lpr

В этом случае отчет будет выведен на принтер, используемый системой по умолчанию. Для вывода файла на другой принтер используйте параметр -P:

lpr -P имя_принтера

где аргумент имя_принтера — имя требуемого принтера. Получить список принтеров, известных системе, поможет команда:

[me@linuxbox ~]$ lpstat -a

ПРИМЕЧАНИЕ

Многие дистрибутивы Linux позволяют определять фиктивные «принтеры», которые выводят результат в файл в формате PDF, а не на физический принтер. Это очень удобно для экспериментов с командами печати. Запустите свою программу настройки принтеров и посмотрите, поддерживает ли она такую возможность. Чтобы включить ее, в некоторых дистрибутивах может понадобиться установить дополнительные пакеты (такие, как cups-pdf).

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

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

Параметр

Описание

– # число

Число копий

– p

Вывести на каждой странице заголовок с датой, временем, именем задания и номером страницы. Этот так называемый параметр структурной печати («pretty print») можно использовать для печати текстовых файлов

– P принтер

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

– r

Удалить файлы после печати. Может пригодиться при использовании программ, создающих временные файлы для печати

lp — печать файлов (в стиле System V)

Подобно lpr, программа lp принимает файлы или данные со стандартного ввода. Отличается от lpr поддержкой иного (немного более сложного) набора парамет­ров. Наиболее часто используемые параметры перечислены в табл. 22.3.

Вернемся к нашему списку содержимого каталога, но на этот раз выведем его с плотностью печати 12 CPI и 8 LPI и с левым полем размером полдюйма. Обратите внимание, что нам пришлось откорректировать параметры pr, чтобы учесть новые размеры страницы:

[me@linuxbox ~]$ ls /usr/bin | pr -4 -w 90 -l 88 | lp -o page-left=36 -o cpi=12 -o lpi=8

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

Параметр

Описание

– d

принтер

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

– n число

Число копий

– o landscape

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

– o fitplot

Масштабировать файл, чтобы уместить на странице. Этот параметр может пригодиться при печати изображений, например файлов в формате JPEG

– o scaling=число

Масштабировать файл с указанным коэффициентом. Значение 100 соответствует полному заполнению страницы. Значения меньше 100 уменьшают размеры области печати, тогда как значения больше 100 — увеличивают, вследствие чего файл печатается на нескольких страницах

– o cpi=число

Установить плотность печати символов на дюйм (CPI) как указанное число символов на дюйм. По умолчанию это значение устанавливается равным 10

– o lpi=число

Установить плотность печати строк на дюйм (LPI) как указанное число строк на дюйм. По умолчанию это значение устанавливается равным 6

– o page-bottom=пунктов

– o page-left=пунктов

– o page-right=пунктов

– o page-top=пунктов

Размеры полей. Значения выражаются в пунктах – единице измерения, используемой в типографском деле. Один дюйм соответствует 72 пунктам

– P страницы

Список страниц для печати. Список может иметь вид перечисления номеров страниц через запятую и/или диапазонов, например: 1,3,5,7-10

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

Еще одна возможность: a2ps

Программа a2ps довольно интересна. Как можно догадаться по ее имени, это программа преобразования одного формата в другой, но не только. Первоначально ее имя означало ASCII to PostScript (из ASCII в PostScript) и она использовалась для подготовки текстовых файлов к печати на принтерах с поддержкой PostScript. С годами, однако, возможности программы росли, и теперь ее имя означает Anything to PostScript (все что угодно — в PostScript). Несмотря на то что имя программы говорит, что это — программа преобразования одного формата в другой, в действительности она является программой печати. Она выводит результаты своей работы в свой вывод по умолчанию — в системный принтер, а не в стандартный вывод. По умолчанию программа действует как программа «структурной печати», улучшая формат вывода. Мы можем с ее помощью создать PostScript-файл на своем рабочем столе:

[me@linuxbox ~]$ 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.

Поделиться:
Популярные книги

Кровь Василиска

Тайниковский
1. Кровь Василиска
Фантастика:
фэнтези
попаданцы
аниме
4.25
рейтинг книги
Кровь Василиска

Венецианский купец

Распопов Дмитрий Викторович
1. Венецианский купец
Фантастика:
фэнтези
героическая фантастика
альтернативная история
7.31
рейтинг книги
Венецианский купец

Сопряжение 9

Астахов Евгений Евгеньевич
9. Сопряжение
Фантастика:
боевая фантастика
постапокалипсис
технофэнтези
рпг
5.00
рейтинг книги
Сопряжение 9

На три фронта

Бредвик Алекс
3. Иной
Фантастика:
фэнтези
рпг
5.00
рейтинг книги
На три фронта

Авиатор: назад в СССР 11

Дорин Михаил
11. Покоряя небо
Фантастика:
альтернативная история
5.00
рейтинг книги
Авиатор: назад в СССР 11

Санек

Седой Василий
1. Санек
Фантастика:
попаданцы
альтернативная история
4.00
рейтинг книги
Санек

Лорд Системы 8

Токсик Саша
8. Лорд Системы
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Лорд Системы 8

Мерзавец

Шагаева Наталья
3. Братья Майоровы
Любовные романы:
современные любовные романы
эро литература
короткие любовные романы
5.00
рейтинг книги
Мерзавец

Игра топа. Между двух огней

Вяч Павел
2. Игра топа
Фантастика:
фэнтези
7.57
рейтинг книги
Игра топа. Между двух огней

Провинциал. Книга 2

Лопарев Игорь Викторович
2. Провинциал
Фантастика:
космическая фантастика
рпг
аниме
5.00
рейтинг книги
Провинциал. Книга 2

Идущий в тени 6

Амврелий Марк
6. Идущий в тени
Фантастика:
фэнтези
рпг
5.57
рейтинг книги
Идущий в тени 6

На границе империй. Том 9. Часть 4

INDIGO
17. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 4

Крестоносец

Ланцов Михаил Алексеевич
7. Помещик
Фантастика:
героическая фантастика
попаданцы
альтернативная история
5.00
рейтинг книги
Крестоносец

Идеальный мир для Лекаря 10

Сапфир Олег
10. Лекарь
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 10