Wie kann ich (viele) ausgewählte Dateien in einem Verzeichnis anstatt einzeln drucken?


10

Ich verwende Ubuntu 12.04 und habe meinen WLAN-Drucker erfolgreich installiert. Meine Frage lautet jedoch: Wie werden viele Dateien gleichzeitig gedruckt? Ich meine, ich habe viele PDF- oder Textdateien in einem Ordner und möchte sie direkt an den Drucker senden, anstatt sie einzeln im Datei-Viewer zu öffnen und dann den gesamten Vorgang so oft zu drucken und dann zu wiederholen /:

Ich sehe sogar keine Druckoption, wenn ich mit der rechten Maustaste auf die Datei oder im Menü Datei klicke.

Vielen Dank!

Antworten:


4

Erstellen Sie die Datei: ~ / .local / share / applications / print.desktop Geben Sie Folgendes ein:

[Desktop Entry]
Encoding=UTF-8
Name=Print Directly
Comment=Print file directly with default printer.
Exec=lp %f
Type=Application
Icon=/usr/share/pixmaps/gnome-applets.png
MimeType=text/plain;text/pdf;application/pdf;application/x-pdf

Klicken Sie mit der rechten Maustaste auf eine beliebige PDF-Datei. In der Ansicht "Öffnen mit ..." wird die erweiterte Liste der verfügbaren Anwendungen für PDF-Dateien angezeigt. Suchen Sie den Eintrag "Direkt drucken" und fügen Sie die Zuordnung hinzu. Von nun an können Sie mit der rechten Maustaste auf eine beliebige PDF-Datei (oder Gruppe) klicken und diese mit dem Befehl lp auf Ihrem Standarddrucker drucken lassen . Wenn Sie Experimente durchführen möchten, installieren Sie den CUPS-PDF-Drucker und legen Sie ihn in den Druckereinstellungen als Standard fest.

sudo apt-get install cups-pdf

Sie haben die Testdatei in den Ordner ~ / PDF "gedruckt".


4

Ich habe ein Skript erstellt, das die gewünschten Dateien an den Standarddrucker sendet: Möglicherweise müssen Sie es ändern, um die folderDateien auszuwählen , in denen sich Ihre Dateien befinden, und es einmal ausführen für .pdfund dann für .txt:
find /home/mike/KeyGuides/ -type f -iname '*.txt' -print0 | while IFS= read -r -d '' f; do lpr "$f"; done. Es funktioniert so, wie ich es gerade getestet habe. Stellen Sie einfach sicher, dass der gewünschte Drucker als Standard eingerichtet ist.

Wenn Sie irgendwelche Probleme haben, werde ich sehen, ob ich es nach Bedarf ändern kann. (Sie können bei Bedarf auch andere Optionen für lpr verwenden - siehe man lpr) Es sollte für die meisten Drucker funktionieren - es ist mit meiner Canon IP4700 erfolgreich.

Diese Version des Skripts verschiebt auch jedes gedruckte Dokument in ein Verzeichnis (das Sie zuvor erstellt haben müssen ), sodass beim Ausführen des Skripts nur neue Dokumente gedruckt werden:

find /home/mike/Duck/ -type f -iname '*.txt' -print0 | while IFS= read -r -d '' f;
 do lpr "$f" && mv "$f" /home/mike/Duck/printed/ ; done

Hallo, danke für deinen Rat, aber was ist, wenn ich viele Dateien drucken möchte, aber nicht alle Dateien in diesem Verzeichnis? Das möchte ich tun, denn wenn neue Dateien in diesem Verzeichnis gespeichert werden, drucke ich nur die neuen Dateien. Hoffe ich habe es gut erklärt :)
Oscar

Das ist wirklich eine andere Frage als die ursprüngliche, aber ich werde sehen, ob ich etwas mit dem Skript anfangen kann - es könnte schwierig sein, nur die nicht bereits gedruckten zu drucken. Wir können jedoch nur einen Befehl hinzufügen, um jedes Dokument nach dem Drucken in einen bestimmten Ordner zu verschieben. Es sollte möglich sein, dies in die while-Schleife einzufügen.

Bitte beachten Sie, dass lpr nur im Klartext funktioniert. Sie müssen ein anderes Tool verwenden, das einen Druckauftrag an CUPS sendet, wenn es sich beispielsweise um PDFs handelt.
Cumulus007

Hallo, nicht so andere Frage, deshalb habe ich "viele" und "ausgewählt" in den Namen der Frage eingefügt, damit alle oder einige davon sein können: D OK, ich hoffe, Sie finden eine Lösung, um dies zu erreichen. Danke vielmals!
Oscar

1
lpr funktioniert mit pdfs - der Befehl lpr bash_FAQ.pdf druckt es perfekt aus.


0

Dies ist keine direkte Lösung für das Ubuntu Linux-Betriebssystem:

  • Versuchen Sie es mit dem Google-Dienst: Google - Cloud Print . Ich bin mir jedoch nicht sicher, ob es eine Ein-Schritt-Multitask-Option gibt

Auch eine komplexere Lösung:

nautilus-actionsPaket installieren

Führen Sie das Menü Nautilus Actions Settingsvon System> aus Preferencesund fügen Sie eine Aktion hinzu:

Registerkarte "Aktion"

Nautilus-Gegenstand

Kontextbezeichnung: Drucken

Element im Auswahlkontextmenü anzeigen

Element im Standortkontextmenü anzeigen (nicht erforderlich)

Aktionseigenschaften: Aktiviert

Befehlsregisterkarte

Profilbezeichnung:

Standardbefehl:

Pfad: lp

Parameter:% M (Klicken Sie auf die Legendenschaltfläche, um weitere Informationen anzuzeigen.)

Bearbeiten Sie die Informationen auf den anderen Registerkarten so, wie sich Ihr Nautilus verhalten soll.

Speichern Sie die Aktion und starten Sie nautilus neu.

In Ihrem Kontextmenü wird "Drucken" angezeigt ...

Quelle: UbuntuForums

Mit einer einfachen Methode:

Öffnen Sie ein Terminal und geben Sie lprein Leerzeichen davor ein. Ziehen Sie dann die Dateien, die Sie drucken möchten, auf das Terminal und legen Sie sie dort ab.


Hallo, ich habe die Aktion und den Befehl in Nautilus wie angegeben hinzugefügt. Das Menü wird angezeigt, wenn Sie mit der rechten Maustaste auf die Datei klicken, aber nichts passiert. /: Die Terminalmethode hat funktioniert, aber beim Drucken von PDF-Dateien hat die resultierende gedruckte Seite andere Schriftarten und nicht die von Ihnen siehe beim öffnen mit dem visier.
Oscar

Entschuldigung, aber das ist nicht mein eigenes Wissen. Ich habe an einigen Stellen genagt, um die Informationen zu erhalten, die ich gerade gepostet habe. Sie sollten im Fall Nautilus die Dokumentation des LP überprüfen. Möglicherweise zielt es nicht auf Ihren Drucker ab.
David M. Sousa

0

Neuere Versionen von CUPS haben die Möglichkeit hinzugefügt, PDFs direkt zu drucken. 11.10 und neuere (und möglicherweise ältere) Versionen haben dies.

Ein anderer Ansatz (den ich mit meinem Duplex-Druckemulatorpaket (zweiseitig) verwende) besteht darin, Print To File für alle Ihre Druckaufträge zu verwenden und sie in einem Ordner abzulegen, der effektiv zu Ihrer persönlichen Druckwarteschlange wird. Sobald sie dort sind, können Sie einige oder alle drucken, wenn Sie möchten, und sie löschen, wenn sie fertig sind.

Dies hat den zusätzlichen Vorteil, dass Sie Jobs nach einem Papierstau usw. erneut ausführen können, ohne sie von Grund auf neu zu erstellen. Außerdem können Sie ohne Unterbrechung weiterarbeiten, um Ihren Drucker zu verwalten.

Wenn Sie möchten, können Sie ein kleines Skript schreiben, das im Hintergrund ausgeführt wird, und mit dem Drucken von Elementen beginnen, die in Ihrer Druckwarteschlange angezeigt werden. Wenn Sie dies tun, möchten Sie Ihre Druckaufträge möglicherweise so benennen, dass sie in der Warteschlange in der Reihenfolge sortiert werden, in der sie gedruckt werden sollen. Ich verwende nur 00 ... 99 für Namen.

Achten Sie bei Textdateien auf solche mit langen Zeilen. CUPS (zumindest standardmäßig) werden die Zeilen nicht für Sie umbrechen oder schöne Seitenränder einrichten.

Mein Duplex-Drucksystem bietet viel mehr als das, was Sie verlangen, kann Ihnen aber einige Ideen geben. Insbesondere gibt es zwei kleine Hilfsskripte dprint und dprintm, die Text aufnehmen und ein wenig zähmen, bevor sie an den Drucker gesendet werden.

http://sourceforge.net/projects/duplexpr/

0

Ich weiß, dass dies alt ist - aber die Art und Weise, dies zu tun, wurde jetzt überarbeitet, wie ich heute herausgefunden habe:

Sie müssen Filemanager-Aktionen installiert haben - es war bereits auf meinem System

sudo apt-get install filemanager-actions

Als nächstes erhalten Sie Nautilus-Aktionen

sudo add-apt-repository ppa:dr3mro/nautilus-actions-extra
sudo apt-get update
sudo apt-get install nautilus-actions

Öffnen Sie FileManager-Actions und erstellen Sie eine neue Aktion wie oben beschrieben:

Action Tab
    Nautilus Item
        Display item in selection context menu (tick)
        Display item in location context menu (tick)
        Context Label : Print
        Display item in the toolbar (tick)
        Use same label for icon in the toolbar (tick)

Command Tab
    Profile
        Label: Default profile
    Command
        Path: lp
        Parameters: %f
        Working directory: %d

Bearbeiten Sie die Informationen auf den anderen Registerkarten so, wie sich Ihr Nautilus verhalten soll.

Speichern Sie die Aktion und starten Sie nautilus neu.

In Ihrem Kontextmenü wird "Drucken" angezeigt ...

Ein paar Links haben mir geholfen: LibreOffice Print Rechtsklick auf Print


-1

Oder benutze Ruby :-)

sudo apt-get install ruby
irb
Dir.glob('*.*').each{ |f| `lp '#{ f }'` }
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.