GNU/Linux >> Znalost Linux >  >> Linux

Tisk souborů z terminálu Linux

Tisk na Linuxu je snadný, ale někdy to vypadá jako hodně práce spustit aplikaci, otevřít soubor, najít Tisk výběr v nabídce, klepněte na potvrzovací tlačítko atd. Když jste uživatelem terminálu Linux, často chcete provádět složité akce pomocí jednoduchých spouštěčů. Tisk je složitý a jen máloco je tak jednoduché jako lpr příkaz.

Tisk pomocí příkazu lpr

Chcete-li vytisknout soubor z vašeho terminálu, použijte lpr příkaz:

$ lpr myfile.odt

Pokud se to nezdaří, musíte nastavit výchozí tiskárnu nebo zadat tiskárnu ručně.

Nastavení výchozí tiskárny

Podle mé opotřebované kopie příručky Berkeley 4.2 vytištěné v roce 1984, lpr příkaz stránkoval a odeslal soubor do tiskové fronty, která streamovala data do něčeho, čemu se říká řádková tiskárna .

V těchto dnech aktuální lpr příkaz je nedostatečný, protože moderní počítače mají pravděpodobně přístup k několika tiskárnám a jistě k tiskárnám mnohem složitějším než jehličková řádková tiskárna. Nyní existuje subsystém, nazvaný Common Unix Printing System (CUPS), který sleduje všechny tiskárny, ke kterým chcete, aby měl váš počítač přístup, jaký ovladač by měl váš počítač používat ke komunikaci s jednotlivými tiskárnami, kterou tiskárnu používat ve výchozím nastavení a již brzy. lpr.cups nebo lpr-cups příkazy, dodávané s CUPS a obvykle symbolicky odkazované na lpr , vám umožní tisknout z terminálu nejprve odkazem na konfiguraci Common Unix Printing System (CUPS).

Chcete-li vytisknout soubor pomocí lpr , měli byste nejprve nastavit výchozí tiskárnu. Výchozí tiskárnu můžete nastavit v nastavení tiskárny systému:

Alternativně můžete tiskárnu označit jako výchozí pomocí lpadmin příkaz:

$ sudo lpadmin -d HP_LaserJet_P2015_Series
$ lpstat -v
device for HP_LaserJet_P2015_Series: ipp://10.0.1.222:631/printers/HP_LaserJet_P2015_Series

Nastavení výchozího cíle pomocí proměnných prostředí

Na systémech, na kterých nemáte účet správce, si nemůžete nastavit vlastní výchozí tiskárnu, protože změna umístění tisku je považována za privilegovaný úkol. Před lpr odkazuje na CUPS pro cíl, dotáže se vašeho systému na PRINTER proměnná prostředí.

V tomto příkladu HP_LaserJet_P2015_Series je lidsky čitelný název daný tiskárně. Nastavte PRINTER na tuto hodnotu:

$ PRINTER=HP_LaserJet_P2015_Series
$ export PRINTER

Jakmile je PRINTER byla nastavena proměnná, můžete vytisknout:

$ lpr myfile.pdf

Získejte seznam připojených tiskáren

Všechny tiskárny, které přijímají tiskové úlohy a které jsou připojeny k vašemu systému, můžete zobrazit pomocí lpstat příkaz:

$ lpstat -a
HP_LaserJet_P2015_Series accepting requests since Sun 1 Aug 2021 10:11:02 PM NZST
r1060 accepting requests since Wed 18 Aug 2021 04:43:57 PM NZST

Tisk na libovolnou tiskárnu

Po přidání tiskáren do systému a nyní, když víte, jak je identifikovat, můžete tisknout na kteroukoli z nich, ať už máte nastavené výchozí cílové umístění nebo ne:

$ lpr -P HP_LaserJet_P2015_Series myfile.txt

Jak jsou definovány tiskárny

CUPS má uživatelsky přívětivý front-end přístupný prostřednictvím webového prohlížeče, jako je Firefox. I když jako uživatelské rozhraní používá webový prohlížeč, ve skutečnosti se jedná o službu spuštěnou lokálně na vašem počítači (umístění zvané localhost ) na portu 631. CUPS spravuje tiskárny připojené k vašemu počítači a ukládá svou konfiguraci do /etc/cups/printers.conf .

Soubor printers.conf soubor obsahuje definice podrobně popisující tisková zařízení, ke kterým má váš počítač přístup. Nemáte ho přímo upravovat, ale pokud to uděláte, musíte zastavit cupsd nejprve démon.

Typický záznam vypadá asi takto:

<Printer r1060>
  Info Ricoh 1060
  Location Downstairs
  MakeModel Ricoh Aficio 1060 - CUPS+Gutenprint v5.2.6
  DeviceURI lpd://192.168.4.8
  State Idle
  StateTime 1316011347
  Type 12308
  Filter application/vnd.cups-raw 0 -
  Filter application/vnd.cups-raster 100 rastertogutenprint.5.2
  Accepting Yes
  Shared No
  JobSheets none none
  QuotaPeriod 0
  PageLimit 0
  KLimit 0
  OpPolicy default
  ErrorPolicy stop-printer
</Printer>

V tomto příkladu je název tiskárny r1060 , člověkem čitelný identifikátor pro Ricoh Aficio 1060.

MakeModel atribut je získán z lpinfo , který uvádí všechny dostupné ovladače tiskáren ve vašem systému. Za předpokladu, že víte, že máte Ricoh Aficio 1060, na kterém chcete tisknout, zadáte tento příkaz:

$ lpinfo -m | grep 1060
gutenprint.5.2://brother-hl-1060/expert Brother HL-1060 - CUPS+Gutenprint v5.2.11
gutenprint.5.2://ricoh-afc_1060/expert Ricoh Aficio 1060 - CUPS+Gutenprint v5.2.11

Další zdroje pro Linux

  • Cheat pro příkazy Linuxu
  • Cheat sheet pro pokročilé příkazy systému Linux
  • Bezplatný online kurz:Technický přehled RHEL
  • Síťový cheat pro Linux
  • Cheat sheet SELinux
  • Cheat pro běžné příkazy pro Linux
  • Co jsou kontejnery systému Linux?
  • Naše nejnovější články o Linuxu

Tento příkaz zobrazí seznam příslušných ovladačů, které jste nainstalovali.

MakeModel je poslední polovina výsledku. V tomto příkladu je to Ricoh Aficio 1060 - CUPS+Gutenprint v5.2.11 .

DeviceURI atribut určuje, kde se tiskárna v síti nachází (nebo fyzické umístění, jako je port USB). V tomto příkladu DeviceURI je lpd://192.168.4.8 protože používám lpd (line printer daemon) protokol pro odesílání dat na síťovou tiskárnu. Na jiném systému mám HP LaserJet připojenou kabelem USB, takže DeviceURI je DeviceURI hp:/usb/HP_LaserJet_P2015_Series?serial=00CNCJM26429 .

Tisk z terminálu

Odeslání úlohy na tiskárnu je snadný proces, pokud rozumíte zařízením připojeným k vašemu systému a rozumíte tomu, jak je identifikovat. Tisk z terminálu je rychlý, efektivní a snadno skriptovatelný nebo prováděný jako dávková úloha. Vyzkoušejte to!


Linux
  1. Zkopírujte soubory v terminálu Linux

  2. Přesunout soubory v terminálu Linux

  3. Pomocí terminálu Linux můžete zjistit, jaké soubory jsou ve vašem počítači

  1. Jaký je váš oblíbený trik s linuxovým terminálem?

  2. Jaký je váš oblíbený emulátor terminálu Linux?

  3. Vydejte se na dobrodružství ve svém linuxovém terminálu

  1. Spravujte svůj kalendář z terminálu Linux pomocí příkazu konsolekalendar

  2. Tiskněte odkudkoli pomocí CUPS v systému Linux

  3. Jaký je váš oblíbený linuxový terminálový trik?