Печать из командной строки

Как я могу распечатать вывод командной строки непосредственно к принтеру.

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

Любая справка ценится

28
задан 12 March 2014 в 03:54

8 ответов

Главным образом существует две команды по умолчанию:

lpr и lp

man lpr дает вывод:

lpr отправляет файлы для печати. Файлы, названные на командной строке, отправляются на именованный принтер (или место назначения по умолчанию, если никакое место назначения не определяется). Если никакие файлы не перечислены на командной строке, lpr читает файл печати из стандартного входа.

man lp дает вывод:

LP отправляет файлы для печати или изменяет незаконченное задание. Используйте имя файла "-" для принуждения печати стандартный вход.

так легко используют команду:

lp /path-to-file-to-print

Или

lpr /path-to-file-to-print
35
ответ дан 16 November 2019 в 11:32

Можно использовать lp

, Например:

man firefox | lp -d printername

Это распечатает страницу справочника с Firefox на указанный принтер

15
ответ дан 16 November 2019 в 11:32

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

и

, Они полезны для предоставления пронумерованным страницам заголовки и дополнительные номера строки. Можно также использовать затем для печати стиля буклета (например, две страницы на каждой стороне листа)

, я использую их со Способными к постскриптуму принтерами, но я полагаю, что система печати Ubuntu может растеризировать PS для любого поддерживаемого принтера.

4
ответ дан 16 November 2019 в 11:32

Можно хотеть узнать, как к принтеру получают доступ сначала - lpstat, даст Вам ту информацию. При сравнении его вывода через обе системы можно, вероятно, сказать, был ли рассматриваемый принтер настроен на них обоих. lpstat -p -d списки все принтеры с их состоянием и говорят, какой был установлен как принтер по умолчанию.

можно просто передать вывод по каналу к lp или lpr команда тогда. Можно хотеть вставить фильтр для симпатичной печати или разбиения на страницы все же. Существует хорошая сводка инструментов в debian руководство "Выделяющиеся и форматирующие данные простого текста" , но я обычно просто использую sed для выделения подсказок и другого материала прежде, чем отправить все до a2ps

3
ответ дан 16 November 2019 в 11:32

Распечатать .txt файл в использовании:

command | lpr -P printername -p ( periority from 1 to 100 )

Пример:

ls -l | lpr -P printername -p 1 
2
ответ дан 16 November 2019 в 11:32

Можно использовать эти lp команда.

Для печати вывода команды к принтеру по умолчанию (использование lpstat -d для наблюдения то, что принтер по умолчанию):

echo "test" | lp

Для печати к определенному принтеру (использование lpstat -p | awk '{print $2}' для списка доступных названий принтера):

echo "test" | lp -d printername

Для печати файла, а не вывода команды:

lp /path/to/file
1
ответ дан 16 November 2019 в 11:32

Вопрос о том, как распечатать из командной строки на сервере , и это кажется, что у Вас еще нет принтеров определенными в той системе. У меня нет системы для начинания работу так, следующее приблизительны, но они должны дать Вам общее представление:

  1. Удостоверяются, что система CUPS установлена и выполнение. Это предоставляет демонам, которые обработают Ваши задания печати.
  2. , Как только это произошло, необходимо настроить один или несколько сетевых принтеров для печати к. Обычный способ установить принтеры с утилита Printer Admin , но Вы очевидно не настраиваетесь для запущения любых программ GUI с сервера - просто доступ командной строки через ssh. Так как у Вас уже есть настольная система Ubuntu в той же сети, я попытался бы копировать содержание каталога /etc/cups с настольного поля на сервер. Это должно содержать все определения принтера и драйверы, в которых Вы нуждаетесь. Проверьте файлы на любые необходимые корректировки (в случае, если Ваша установка упоминает идентификаторы пользователей или пароли, которые отличаются между этими двумя системами), перезапустите cupsd, и если Вы удачливы, что будете в состоянии использовать lpr для печати от командной строки.

пз. В повышении Вы могли установить достаточно X утилит для выполнения утилита Print Admin GUI через удаленное X соединений с настольным полем Ubuntu (войдите в систему с ssh -X), и определите принтеры, в которых Вы нуждаетесь. Но надо надеяться это не будет необходимо.

1
ответ дан 16 November 2019 в 11:32

Если вы хотите управлять различными параметрами макета, шрифтами, размером шрифта и т. д., вы можете использовать enscript как , предложенный RedGrittyBrick.

sudo apt install enscript

Несколько деталей, которые могут быть полезны:

  • Вы можете использовать шрифты, у которых есть файл .afm в /usr/share/enscript/afm/
  • Имя шрифта для использования с параметром -f должно быть кратким именем, указанным как ИмяШрифта в файле .afm. Например: «ZapfDingbats», а не «ITC Zapf Dingbats».
    Эти имена также перечислены в файле /usr/share/enscript/afm/font.map.
  • Если вы хотите увидеть, какие моноширинные шрифты у вас есть, вы можете использовать что-то вроде этого:
    for f в /usr/share/enscript/afm/*.afm; do grep -q '^IsFixedPitch true' "$f" && grep FontName "$f"; done
  • Чтобы установить размер шрифта, добавьте «@n» к имени шрифта.
  • Вы можете получить список имен принтеров для использования с параметрами -d или -P с помощью
    lpstat -p

Пример команды печати:

font=Courier@9
printer=HP-4350

your_command | enscript -P $printer -f $font --tabsize=4

# or for files:
enscript -P $printer -f $font --tabsize=4 $Your_file_to_print

Конечно, в man enscript перечислено гораздо больше опций.

0
ответ дан 23 September 2020 в 14:49

Другие вопросы по тегам:

Похожие вопросы: