- lpr: печать из командной строки
- В Debian/Ubuntu:
- В Fedora/Cent OS/RedHat:
- Команда lpr:
- Список сетевых принтеров:
- Печать на заданный принтер:
- Проверка состояния:
- Очистка очереди печати:
- Печать всех файлов в директории:
- Linux printing from command line
- Печать из командной строки Linux
- Вывод параметров принтера
- Полезные команды
- Двусторонняя печать
- Печать в ландшафтном режиме
- Linux printing from command line
- Printing from the Linux Command Line
- Need to print shipping labels on your site?
lpr: печать из командной строки
Команда lpr (line printer) печатает файл из терминала Linux. Утилита lpr помещает один или несколько файлов в очередь печати. Концепция очереди позволяет нескольким пользователям системы направлять вывод на один принтер. Очередь печатается последовательно, то есть первый файл в очереди будет напечатан первым. Если вы редактируете большинство своих файлов в консольных редакторах, таких как vim или nano, и хотите быстро распечатать набранный текст, вы найдете команду lpr очень легкой в употреблении и удобной. Для того, чтобы печатать с помощью команды lpr, необходимо установить пакет System printer configuration. Это можно сделать с помощью следующих команд:
В Debian/Ubuntu:
В Fedora/Cent OS/RedHat:
В других дистрибутивах пакет system-config-printer также должен иметься в репозиториях.
Откройте его и кликните Add.
Выберите и добавьте свой принтер
Команда lpr:
Для печати тестового файла просто введите:
Список сетевых принтеров:
Чтобы получить список всех доступных сетевых принтеров, введите команду:
Печать на заданный принтер:
Если доступно несколько принтеров, вы можете использовать опцию -P, чтобы указать нужный вам принтер.
Пробел после -P вставлять необязательно:
Проверка состояния:
Проверить состояние очереди печати определенного принтера можно с помощью команды lpq.
Очистка очереди печати:
Как вы могли видеть из вывода приведенной выше команды, каждая очередь печати имеет уникальный id. Вы можете удалить файлы из очереди печати с помощью команды lprm:
Чтобы отменить все задания на печать, используется следующая команда:
Печать всех файлов в директории:
Это очень простой трюк, чтобы напечатать все файлы с одинаковым расширением в директории. Вы должны перейти в эту директорию Введите следующую команду, чтобы распечатать все текстовые файлы в директории:
Все файлы с расширением .txt будут распечатаны в альбомном формате. Вы также можете задать принтер в этой же команде:
Источник
Linux printing from command line
Printing Commands in Linux or Debain Linux
Linux includes a number of command line tools for administering printing. These commands are useful on networks, or for troubleshooting and managing printing on any system.
Each printer on a Linux system has its own spool or queue in the /var /spool/lpd directory. This spool uses the short name of the printer, which is created when the printer is first configured. When a file is printed, it becomes a job in the spool. Each job is stored in a spool until it is printed.
Printing tools generally start with lp (short for «line printer»). If you are familiar with other Linux commands, you can usually make a good guess at what the rest of the command should be. For example, lprm removes a print job from the spool
You can use the following tools for managing printing
lpq : Checks the status of print jobs.
lprm : Removes a print job from a spool.
lpstat : Reads the status of a spool.
Checking the Status of Print Jobs
lpq options user
The command’s name comes from the fact that a spool is sometimes called a «queue.»
The lpq Command (Print Jobs) Options
-l — Prints information for each file in the printer queue.
number — Checks the status of a job number.
-P printer — Sets the printer that a job should Use.
If you want to know more options check lpq man page
Sends requests to a line printer
lp options files
If you want to know more options check lp man page
Removing Jobs From a Printer Spool
lprm options job user
The command’s name comes from the fact that it removes (rm) a job from a line printer (lp).
Only the root user can remove a job sent by another user.
Regular users can remove their own print jobs.
Use lpstat to find job numbers.
The lprm Command (Remove Print Jobs) Options
-P printer — Sets the printer to Use.
— user — Removes all jobs sent by the user specified.
If you want to know more options check lprm man page
Reading the Status of a Printer Spool
lpstat -t options
If you want to know more options check lpstat man page
Printing From the Command Line
lpr options files
The lpr Command (Print) Options
-P printer — Selects the printer to Use.
-s — This option saves time and disk space for large files, but may cause printing to be slower.
If you want to know more options check lpr man page
Источник
Печать из командной строки Linux
Оригинал: Printing from the Linux command line
Автор: Sandra Henry-Stocker
Дата публикации: 20 марта 2019 года
Перевод: А. Кривошей
Дата перевода: апрель 2016 г.
Печать из командной строки Linux очень проста. Вы используете команду lp, чтобы запросить печать, и lpq, чтобы увидеть, какие задания на печать находятся в очереди, но все становится немного сложнее, когда вы хотите печатать на двух сторонах листа или в портретном режиме. И есть много других вещей, которые вы можете захотеть сделать — например, распечатать несколько копий документа или отменить задание на печать. Давайте проверим некоторые опции, чтобы, когда вы печатаете из командной строки, ваши распечатки выглядели именно так, как вы хотите.
Вывод параметров принтера
Чтобы просмотреть настройки принтера из командной строки, используйте команду lpoptions. Вывод должен выглядеть примерно так:
Этот вывод, вероятно, будет немного более дружественным к человеку, если вы превратите его пробелы в возврат каретки. Обратите внимание, сколько настроек указано в списке.
ПРИМЕЧАНИЕ. В приведенном ниже выводе некоторые строки были повторно связаны, чтобы сделать этот вывод более читабельным.
С опцией -v команда lpinfo выведет список драйверов и связанной с ними информации.
Команда lpoptions покажет настройки вашего принтера по умолчанию. Используйте параметр -p, чтобы указать один из нескольких доступных принтеров.
Команда lpstat -p отображает состояние принтера, а команда lpstat -p -d также выводит список доступных принтеров.
Полезные команды
Чтобы распечатать документ на принтере по умолчанию, просто используйте команду lp, а затем имя файла, который вы хотите распечатать. Если имя файла содержит пробелы (что редко встречается в системах Linux), либо поместите имя в кавычки, либо начните вводить имя файла и нажмите клавишу табуляции, чтобы вызвать завершение файла (как показано во втором примере ниже).
Команда lpq отображает очередь печати.
Команда lp с опцией -n позволяет вам указать количество копий, которое вы хотите напечатать.
Чтобы отменить задание на печать, вы можете использовать команду cancel или lprm. Если вы не будете действовать быстро, то можете увидеть это:
Двусторонняя печать
Чтобы печатать в двухстороннем режиме, вы можете ввести команду lp с параметром sides, в котором указано, как печатать на обеих сторонах листа, и вид переплета (сбоку или сверху). Этот параметр представляет обычный способ, при которым вы получите двусторонний документ в портретном режиме.
Если вы хотите, чтобы все ваши документы печатались в двухстороннем режиме, вы можете изменить настройки lp для sides с помощью команды lpoptions.
Чтобы вернуться к односторонней печати, вы должны использовать такую команду:
Печать в ландшафтном режиме
Для печати в ландшафтном режиме вы должны использовать параметр landscape с командой lp.
Система печати, используемая в системах Linux, — это основанная на стандартах система печати с открытым исходным кодом, называемая CUPS, первоначально обозначавшая Common Unix Printing System. Она позволяет компьютеру выступать в качестве сервера печати.
Источник
Linux printing from command line
В этом разделе обсуждается как печатать файлы, проверять очередь печати, удалять задания из очереди, форматировать файлы до их печати и производить настройку среды печати.
Система печати Linux — lp система — это порт исходного кода написанного в Университете Калифорнии для BSD версии операционной системы UNIX.
Наиболее простой путь для печати в операционной системе Linux это посыл файла для печати прямо на устройство печати. Для того чтобы сделать это используется команда cat . Как пользователь root , наберите что-то подобное этому
В этом случае, /dev/lp это символическая ссылка на устройство печати — это может быть матричный или лазерный принтер, typesetter, или плоттер. (См. ln (1) для более полной информации о символических ссылках)
В целях безопасности, только пользователь root и пользователи в той же группе что и демон принтера могут писать прямо на принтер. Поэтому такие команды как lpr , lprm , and lpq должны использоваться для доступа к принтеру.
Поэтому пользователи должны использовать lpr для печати файлов. Команда lpr берет на себя заботы о всей начальной работе необходимой для печати файла, и затем передает контроль другой программе, lpd , демону линейной печати. Затем демон линейной печати говорит принтеру как печатать файл.
Когда выполняется команда lpr , она первым делом копирует заданный файл в определенную директорию (spool directory), где файл остается пока lpd печатает его. Когда lpd сообщают, что есть файл для печати, он запускает копию своего процесса (что программисты называют forking). Эта копия процесса будет печатать наш файл в то время как оригинальный процесс будет ждать других запросов. Это позволяет обслуживать много заданий печати в одно время.
Синтаксис lpr (1) очень прост,
Если имя_файла не задано, lpr ожидает ввод данных со стандартного вводаexpects (обычно клавиатура, или вывод другой программы). Это позволяет пользователям перенаправлять вывод комманд в очередь печати. Вот так,
Команда lpr принимает несколько аргументов командной строки что позволяет пользователям контролировать его работу. Вот некоторые из часто используемых аргументов: — P printer определяет какой принтер использовать, — h suppresses printing of the burst page, — s создает символическую ссылку вместо копирования файла в директорию спула (полезно для больших файлов), и — # num определяет количество копий печати. Пример взаимодействия с lpr может выглядеть подобно этому
Эта команда создает символическую ссылку на файл thesis.txt в директории спула для принтера названного dj , где он будет обработан демоном печати lpd . Затем будет напечатана вторая копия файла thesis.txt .
Для просмотра всех опций, которые может принимать lpr , смотрите мануал по lpr (1).
Для просмотра содержимого очереди печати используется команда lpq . Команда запущенная без аргументов, она возвращает содержимое очереди печати принтера по умолчанию.
Вывод возвращаемый lpq может быть полезен для многих целей.
Другое полезное свойство любой системы печати это возможность отмены задания, которое было перед этим помещено в очередь. Чтобы сделать это используйте команду lprm .
Показанная выше команда отменяет все задания печати владельцем котрых является пользователь выполнивший эту команду. Для того чтобы отменить одиночное задание печати, надо сначала получить номер задания с помощью команды lpq и затем сообщить полученный номер команде lprm . Например,
отменит задание номер 31 ( thesis.txt ) на принтере по умолчанию.
Программа lpc (8) используется для контроля принтеров, которые обслуживает демон lpd. Вы можете разрешать или запрещать использование принтера или их очередей, перераспределять задания внутри очереди, и получать информацию о состоянии принтеров и их очередей. Lpc наиболее часто используется в системах, где несколько принтеров установлено на одну машину.
Команда показанная выше запускает программу lpc. По умолчанию, она входит в интерактивный режим и вы можете начинать вводить команды. Другие опции используются для запуска команды lpc в командной строке.
Список всех возможных команд перечислен на странице руководства команды lpd , но здесь перечислено несколько главных команд, которые вы должны знать. Любые команды обозначенные как option могут быть либо именем принтера (lp, print, etc) или ключевым словом all , которое обозначает все принтера.
- disable option — запрещает добавление любых новых заданий печати
- down option — запрещает все задания на принтере
- enable option — разрешает ввод новых заданий в очередь печати
- quit (or exit) — покинуть lpc
- restart option — перезагрузить lpd для данного принтера
- status option — статус печати принтера
- up option — разрешить все и стартовать новый демон lpd
Небольшое замечание here on RedHat’s amazing printtool program.
Она умеет делать все, что должен делать magicfilter. RedHat уже установил много программ для использования фильтров. Здесь показано как установить принтер HP LJ 4L, подключенный к параллельному порту, в RedHat 4.0 (эта процедура должна быть одинаковой для всех версий RH).
- Войдите как root и запустите printtool (если вы используете команду su, вы должны установить SETENV DISPLAY :0.0 и xhost +).
- Щелкните кнопку «Add» («Добавить»), и нажмите «OK» для локального принтера.
- Заполните поле именем устройства печати (например /dev/lp1)
- Заполните поле входного фильтра — Выберите тип принтера, разрешение и размер бумаги (ljet4, 300×300 и letter для нашего примера)
- Нажмите «OK», и перезапустите lpd.
Подобным образом исправляя файл /etc/printcap вручную, вы можете иметь множество определений принтера для каждого физического принтера. Каждое для различных размеров бумаги, разрешений и т.п.
Источник
Printing from the Linux Command Line
So you have your printer set up with CUPS and you can now print. Ever want to print from the command line? Ever need your bash script to print out system status reports or simply want to print out entire directory of pdfs all in one shot without having to open each pdf individually? Than this quick tip is for you.
After you can successfully print and have your default printer setup in Linux. Open up the terminal. The command to print in Linux is ‘lpr’.
From here you can use the command just like you would any other Linux command. For example if you wanted to print out all pdf’s in a directory you would simply use the following command.
I am sure you can find all kinds of ways to use this. Even ways to torment your co-workers by setting up a cron job lpr print that will print random sayings with ‘fortune’.
#!/bin/bash COUNTER=0 while [ $COUNTER -lt 10 ]; do sleep 10m fortune | lpr let COUNTER=COUNTER+1 done
To use this script open your favorite text editor and create a file with any name you want
Then paste the code and save the file.
Then make the file executable by changing the permissions on your file to 755.
chmod 755 randomFortunePrint
Run your program with:
Here is what mine said.
Q: Why did the astrophysicist order three hamburgers? A: Because he was hungry.
I am sure you can find more constructive ways to use this. 🙂 Please let me know what kinds of things you guys come up with.
Need to print shipping labels on your site?
Checkout my product RocketShipIt for simple easy-to-use developer tools for UPS™ FedEx™ USPS™ and more.
Источник