GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Drucken Sie Dateien von Ihrem Linux-Terminal aus

Das Drucken unter Linux ist einfach, aber manchmal fühlt es sich nach viel Arbeit an, eine Anwendung zu starten, eine Datei zu öffnen und den Druck zu finden Auswahl im Menü, klicken Sie auf eine Bestätigungsschaltfläche und so weiter. Wenn Sie ein Linux-Terminalbenutzer sind, möchten Sie häufig komplexe Aktionen mit einfachen Auslösern ausführen. Das Drucken ist komplex und es gibt kaum etwas so Einfaches wie lpr Befehl.

Mit dem lpr-Befehl drucken

Um eine Datei von Ihrem Terminal aus zu drucken, verwenden Sie lpr Befehl:

$ lpr myfile.odt

Sollte dies fehlschlagen, müssen Sie einen Standarddrucker festlegen oder einen Drucker manuell angeben.

Festlegen eines Standarddruckers

Laut meiner abgenutzten Kopie eines Berkeley 4.2-Handbuchs, das 1984 gedruckt wurde, ist der lpr Befehl paginiert und eine Datei an einen Drucker-Spool gesendet, der Daten an einen sogenannten Zeilendrucker gestreamt hat .

Heutzutage ist das eigentliche lpr Der Befehl ist unzureichend, da moderne Computer wahrscheinlich Zugriff auf mehrere Drucker haben, und sicherlich auf Drucker, die viel komplexer sind als ein Punktmatrix-Zeilendrucker. Jetzt gibt es ein Subsystem namens Common Unix Printing System (CUPS), um alle Drucker zu verfolgen, auf die Ihr Computer zugreifen soll, welchen Treiber Ihr Computer verwenden sollte, um mit jedem Drucker zu kommunizieren, welchen Drucker er standardmäßig verwenden soll, und bald. Die lpr.cups oder lpr-cups Befehle, die mit CUPS gebündelt und normalerweise symbolisch mit lpr verknüpft sind , erlauben Ihnen, von einem Terminal aus zu drucken, indem Sie zuerst auf Ihre Common Unix Printing System (CUPS)-Konfiguration verweisen.

Um eine Datei mit lpr zu drucken , sollten Sie zunächst einen Standarddrucker festlegen. Sie können einen Standarddrucker in den Druckereinstellungen Ihres Systems festlegen:

Alternativ können Sie mit lpadmin einen Drucker als Standarddrucker markieren Befehl:

$ 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

Festlegen eines Standardziels mit Umgebungsvariablen

Sie dürfen Ihren eigenen Standarddrucker nicht auf Systemen festlegen, auf denen Sie kein Administratorkonto haben, da das Ändern von Druckzielen als privilegierte Aufgabe gilt. Vor lpr CUPS für ein Ziel referenziert, fragt es Ihr System nach dem PRINTER ab Umgebungsvariable.

In diesem Beispiel HP_LaserJet_P2015_Series ist der für Menschen lesbare Name des Druckers. Stellen Sie DRUCKER ein zu diesem Wert:

$ PRINTER=HP_LaserJet_P2015_Series
$ export PRINTER

Einmal der DRUCKER Variable gesetzt wurde, können Sie drucken:

$ lpr myfile.pdf

Erhalten Sie eine Liste der angeschlossenen Drucker

Mit dem lpstat können Sie alle Drucker sehen, die Druckaufträge annehmen und die an Ihr System angeschlossen sind Befehl:

$ 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

Auf einem beliebigen Drucker drucken

Sobald Sie Drucker zu Ihrem System hinzugefügt haben und nun wissen, wie man sie identifiziert, können Sie auf jedem von ihnen drucken, unabhängig davon, ob Sie ein Standardziel festgelegt haben oder nicht:

$ lpr -P HP_LaserJet_P2015_Series myfile.txt

Wie Drucker definiert werden

CUPS hat ein benutzerfreundliches Front-End, auf das über einen Webbrowser wie Firefox zugegriffen werden kann. Obwohl es einen Webbrowser als Benutzeroberfläche verwendet, ist es eigentlich ein Dienst, der lokal auf Ihrem Computer ausgeführt wird (ein Ort namens localhost ) auf Port 631. CUPS verwaltet an Ihren Computer angeschlossene Drucker und speichert seine Konfiguration in /etc/cups/printers.conf .

Die printers.conf Datei besteht aus Definitionen der Druckgeräte, auf die Ihr Computer zugreifen kann. Sie sollten es nicht direkt bearbeiten, aber wenn Sie dies tun, müssen Sie den cupsd stoppen Daemon zuerst.

Ein typischer Eintrag sieht etwa so aus:

<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>

In diesem Beispiel lautet der Name des Druckers r1060 , eine von Menschen lesbare Kennung für eine Ricoh Aficio 1060.

Das MakeModel Attribut wird aus lpinfo gezogen Befehl, der alle verfügbaren Druckertreiber auf Ihrem System auflistet. Angenommen, Sie wissen, dass Sie einen Ricoh Aficio 1060 haben, auf dem Sie drucken möchten, dann würden Sie diesen Befehl eingeben:

$ 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

Weitere Linux-Ressourcen

  • Spickzettel für Linux-Befehle
  • Spickzettel für fortgeschrittene Linux-Befehle
  • Kostenloser Online-Kurs:RHEL Technical Overview
  • Spickzettel für Linux-Netzwerke
  • SELinux-Spickzettel
  • Spickzettel für allgemeine Linux-Befehle
  • Was sind Linux-Container?
  • Unsere neuesten Linux-Artikel

Dieser Befehl listet die relevanten Treiber auf, die Sie installiert haben.

Das MakeModel ist die letzte Hälfte des Ergebnisses. In diesem Beispiel ist das Ricoh Aficio 1060 - CUPS+Gutenprint v5.2.11 .

Der Geräte-URI -Attribut gibt an, wo sich der Drucker im Netzwerk befindet (oder an einem physischen Ort, z. B. dem USB-Anschluss). In diesem Beispiel der DeviceURI ist lpd://192.168.4.8 weil ich den lpd verwende (Line Printer Daemon)-Protokoll zum Senden von Daten an einen Netzwerkdrucker. Auf einem anderen System habe ich einen HP LaserJet über ein USB-Kabel angeschlossen, also die DeviceURI ist Geräte-URI hp:/usb/HP_LaserJet_P2015_Series?serial=00CNCJM26429 .

Drucken vom Terminal

Das Senden eines Auftrags an einen Drucker ist ein einfacher Vorgang, solange Sie die an Ihr System angeschlossenen Geräte und deren Identifizierung verstehen. Das Drucken über das Terminal ist schnell, effizient und lässt sich einfach per Skript oder als Batch-Job ausführen. Probieren Sie es aus!


Linux
  1. Kopieren Sie Dateien im Linux-Terminal

  2. Was ist Ihr Lieblings-Linux-Terminal-Trick?

  3. Was ist Ihr Lieblings-Linux-Terminal-Emulator?

  4. Begeben Sie sich in Ihrem Linux-Terminal auf ein Abenteuer

  5. Was ist Ihr Lieblings-Linux-Terminal-Trick?

Schlängeln Sie sich durch Ihr Linux-Terminal

Spielen Sie Tetris auf Ihrem Linux-Terminal

Fahren Sie eine Lokomotive durch Ihr Linux-Terminal

So suchen Sie Dateien im Terminal unter Linux

Linux-Dateiverwaltung über das Terminal

So verwalten Sie Dateien vom Linux-Terminal aus