從 Linux 命令行進行打印 | Linux 中國 - 知乎

在 Linux 命令行進行打印的內容比單單一個 lp 命令多得多,讓我們來看一些可用選項。

(本文字數:4305,閱讀時長大約:5 分鐘)

在 Linux 命令行進行打印的內容比單單一個 lp 命令多得多,讓我們來看一些可用選項。

Linux 命令行打印很容易。你可以使用 lp 命令來請求打印,並使用 lpq 命令來查看隊列中有哪些打印作業,但是當你要雙面打印或使用縱向模式時,這些會變得有些複雜。你可能還需要做很多其他事情,例如打印多份文檔副本或取消打印作業。讓我們來看看一些選項,當你從命令行打印時,如何讓你的打印輸出看起來如你所願。

顯示打印機配置

要從命令行查看打印機設置,請使用 lpoptions 命令。 輸出應如下所示:

$ lpoptions
copies=1 device-uri=dnssd://HP%20Color%20LaserJet%20CP2025dn%20(F47468)._pdl-datastream._tcp.local/ finishings=3 job-cancel-after=10800 job-hold-until=no-hold job-priority=50 job-sheets=none,none marker-change-time=1553023232 marker-colors=#000000,#00FFFF,#FF00FF,#FFFF00 marker-levels=18,62,62,63 marker-names='Black\ Cartridge\ HP\ CC530A,Cyan\ Cartridge\ HP\ CC531A,Magenta\ Cartridge\ HP\ CC533A,Yellow\ Cartridge\ HP\ CC532A' marker-types=toner,toner,toner,toner number-up=1 printer-commands=none printer-info='HP Color LaserJet CP2025dn (F47468)' printer-is-accepting-jobs=true printer-is-shared=true printer-is-temporary=false printer-location printer-make-and-model='HP Color LaserJet cp2025dn pcl3, hpcups 3.18.7' printer-state=3 printer-state-change-time=1553023232 printer-state-reasons=none printer-type=167964 printer-uri-supported=ipp://localhost/printers/Color-LaserJet-CP2025dn sides=one-sided

如果將其空格轉換爲回車符,輸出可能會更人性化,請注意列出了多少設置選項。

注意:在下面的輸出中,一些行被重新鏈接,以使輸出更具可讀性。

$ lpoptions | tr " " '\n'
copies=1
device-uri=dnssd://HP%20Color%20LaserJet%20CP2025dn%20(F47468)._pdl-datastream._tcp.local/
finishings=3
job-cancel-after=10800
job-hold-until=no-hold
job-priority=50
job-sheets=none,none
marker-change-time=1553023232
marker-colors=#000000,#00FFFF,#FF00FF,#FFFF00
marker-levels=18,62,62,63
marker-names='Black\ Cartridge\ HP\ CC530A,
Cyan\ Cartridge\ HP\ CC531A,
Magenta\ Cartridge\ HP\ CC533A,
Yellow\ Cartridge\ HP\ CC532A'
marker-types=toner,toner,toner,toner
number-up=1
printer-commands=none
printer-info='HP Color LaserJet CP2025dn (F47468)'
printer-is-accepting-jobs=true
printer-is-shared=true
printer-is-temporary=false
printer-location
printer-make-and-model='HP Color LaserJet cp2025dn pcl3, hpcups 3.18.7'
printer-state=3
printer-state-change-time=1553023232
printer-state-reasons=none
printer-type=167964
printer-uri-supported=ipp://localhost/printers/Color-LaserJet-CP2025dn
sides=one-sided

使用 -v 選項時,lpinfo 命令將列出驅動程序和相關信息:

$ lpinfo -v
network ipp
network https
network socket
network beh
direct hp
network lpd
file cups-brf:/
network ipps
network http
direct hpfax
network dnssd://HP%20Color%20LaserJet%20CP2025dn%20(F47468)._pdl-datastream._tcp.local/ <== printer
network socket://192.168.0.23 <== printer IP

lpoptions 命令將顯示默認打印機的設置。使用 -p 選項指定其中一個可用打印機代號:

$ lpoptions -p LaserJet

lpstat -p 命令顯示打印機的狀態,而 lpstat -p -d 列出可用打印機列表。

$ lpstat -p -d
printer Color-LaserJet-CP2025dn is idle. enabled since Tue 19 Mar 2019 05:07:45 PM EDT
system default destination: Color-LaserJet-CP2025dn

非常有用的命令

要在默認打印機上打印文檔,只需使用 lp 命令,後跟要打印的文件名即可。 如果文件名包含空格(在 Linux 系統上很少見),請將該名稱放在引號中或開始輸入文件名並按 Tab 鍵調用空格的轉義標誌(如下面的第二個示例所示)。

$ lp "never leave home angry"
$ lp never\ leave\ home\ angry

lpq 命令顯示打印隊列:

$ lpq
Color-LaserJet-CP2025dn is ready and printing
Rank Owner Job File(s) Total Size
active shs 234 agenda 2048 bytes

使用 -n 選項時,lp 命令可用來指定所需打印輸出的份數:

$ lp -n 11 agenda

要取消打印作業,可以使用 cancellprm 命令。如果沒來得及執行,則可能會看到以下信息:

$ cancel 229
cancel: cancel-job failed: Job #229 is already completed - can't cancel.

雙面打印

要以雙面模式打印,你可以在 lp 命令中使用 sides 選項,該選項不但表示了在紙張的正反面進行打印,還表示了從紙張的哪個邊開始打印。這個設置代表了你期望以雙面縱向文檔的正常方式打印。

$ lp -o sides=two-sided-long-edge Notes.pdf

如果要所有文檔以雙面模式打印,則可以使用 lpoptions 命令更改 sides 設置以修改 lp 的設置。

$ lpoptions -o sides=two-sided-short-edge

要恢復爲單面打印,可以使用如下命令:

$ lpoptions -o sides=one-sided

橫向打印

要以橫向模式打印,可以在 lp 命令中使用 landscape 選項。

$ lp -o landscape penguin.jpg

CUPS(Unix 通用打印系統)

Linux 系統上使用的打印系統是基於標準的開源打印系統,稱爲 CUPS,原意是 Unix 通用打印系統(Common Unix Printing System)。 它允許計算機充當打印服務器。


via: https://www.networkworld.com/article/3373502/printing-from-the-linux-command-line.html

作者:Sandra Henry-Stocker 選題:lujun9972 譯者:stevenzdg988 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章