Advertisements

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, die Drucken Auswahl im Menü, klicken Sie auf eine Bestätigungsschaltfläche usw. Wenn Sie ein Linux-Terminalbenutzer sind, möchten Sie häufig komplexe Aktionen mit einfachen Auslösern ausführen. Drucken ist komplex und so einfach wie das lpr Befehl.

Drucken mit dem lpr-Befehl

Um eine Datei von Ihrem Terminal aus zu drucken, verwenden Sie die 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 aus dem Jahr 1984 ist die lpr Der Befehl paginierte und schickte eine Datei an eine Druckerspule, die Daten an etwas namens a . streamte Zeilendrucker.

berkeley-1984-lpr.jpeg

Der lpr-Befehl.

Heutzutage ist die tatsächliche lpr Befehl ist unzureichend, da moderne Computer wahrscheinlich auf mehrere Drucker zugreifen können, und zwar 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 soll, um mit jedem Drucker zu kommunizieren, welcher Drucker standardmäßig verwendet wird, und demnächst. Die lpr.cups oder lpr-cups Befehle, gebündelt mit CUPS und normalerweise mit einem Symlink zu lpr, ermöglichen Ihnen das Drucken von einem Terminal aus, indem Sie zuerst auf Ihre Common Unix Printing System (CUPS)-Konfiguration verweisen.

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

Drucker-Standard.jpeg

Dialogfeld zum Festlegen des Standarddruckers

Legen Sie einen Standarddrucker fest.

Alternativ können Sie einen Drucker als Standard mit dem lpadmin 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 einrichten, 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 DRUCKER Umgebungsvariable.

In diesem Beispiel, HP_LaserJet_P2015_Series ist der für den Drucker lesbare Name. Satz DRUCKER zu diesem Wert:

$ PRINTER=HP_LaserJet_P2015_Series
$ PRINTER

Sobald die DRUCKER Variable gesetzt wurde, können Sie drucken:

$ lpr myfile.pdf

Rufen Sie eine Liste der angeschlossenen Drucker ab

Alle Drucker, die Druckaufträge annehmen und die an Ihr System angeschlossen sind, sehen Sie mit dem lpstat 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

Drucken auf einem beliebigen Drucker

Nachdem Sie Ihrem System Drucker hinzugefügt haben und nun wissen, wie Sie sie identifizieren, 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 verfügt über ein benutzerfreundliches Frontend, auf das über einen Webbrowser wie Firefox zugegriffen werden kann. Obwohl es einen Webbrowser als Benutzeroberfläche verwendet, handelt es sich tatsächlich um einen Dienst, der lokal auf Ihrem Computer ausgeführt wird (ein Ort namens localhost) auf Port 631. CUPS verwaltet Drucker, die an Ihren Computer angeschlossen sind, 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 sind nicht dazu bestimmt, sie direkt zu bearbeiten, aber wenn Sie dies tun, müssen Sie die cupsd Dämon zuerst.

Ein typischer Eintrag sieht in 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 einen Ricoh Aficio 1060.

Die MakeModel Attribut wird aus dem gezogen lpinfo 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 geben Sie diesen Befehl aus:

$ 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

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

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

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

Drucken über das Terminal

Das Senden eines Auftrags an einen Drucker ist ein einfacher Vorgang, solange Sie die an Ihr System angeschlossenen Geräte verstehen und sie identifizieren können. Das Drucken vom Terminal aus ist schnell, effizient und lässt sich einfach per Skript oder als Batch-Job ausführen. Versuch es!

Drucken Sie Dateien von Ihrem Linux-Terminal aus

Leave a Reply

Your email address will not be published. Required fields are marked *

Scroll to top