Drucken von PDF-Dateien über die Windows-Befehlszeile

8

Ich versuche alle PDFs im aktuellen Verzeichnis zu drucken. Wenn ich dieses Bash-Skript in cmd ( singlepdf.sh ) aufrufe: '"C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe"' /t Gemeinde_348_BioID_842_alt.pdf alles funktioniert gut.

Beim Aufruf von multiplepdfs.sh mit diesem Inhalt:

%Vor%

Das Echo zeigt, dass Dateien in der Schleife korrekt adressiert sind - aber dann bekomme ich den Fehler "C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe": No such file or directory

Kann jemand mit diesem Problem helfen?

Bearbeiten: BTW, ich habe msys mingw installiert

    
Kay 01.10.2013, 19:59
quelle

8 Antworten

7

Ich hatte zwei Probleme mit Acrobat Reader für diese Aufgabe.

  1. Die Befehlszeilen-API wird nicht offiziell unterstützt, sodass sie sich ändern oder ohne Warnung entfernt werden kann.
  2. Senden Sie einen Druckbefehl an Reader lädt die GUI, mit scheinbar keine Möglichkeit, es zu verhindern. Ich brauchte den Prozess, um für den Benutzer transparent zu sein.

Ich bin über diesen Blog gestolpert, der vorschlägt zu verwenden Foxit Reader . Foxit Reader ist kostenlos, die API ist fast identisch mit Acrobat Reader, aber entscheidend ist dokumentiert und lädt nicht die GUI für Druckaufträge.

Ein Wort der Warnung, klicken Sie nicht einfach durch den Installationsprozess, ohne darauf zu achten, es versucht auch, nicht verwandte Software zu installieren. Warum machen Softwarehersteller das noch immer ???

    
kim3er 20.03.2014 07:38
quelle
4

Erste Antwort - wollte endlich einer hilfreichen Community zurückgeben ...

Wollte das zu den Antworten für Leute hinzufügen, die immer noch nach einer einfachen Lösung suchen. Ich verwende ein kostenloses Produkt von Foxit Software - FoxItReader.
Hier ist der Link zu der Version, die mit dem Silent-Druck funktioniert - neuere Versionen funktioniert die Silent-Print-Funktion immer noch nicht. FoxitReader623.815_Setup

> %Vor%

Ich habe einfach einen Befehl erstellt, um das Verzeichnis zu durchlaufen und für jede PDF-Datei (FOR %% f IN * .pdf) öffne den Leser still (/ t), hole die nächste PDF (%% f) und sende sie an die Druckwarteschlange (SPST-SMPICK), löschen Sie dann jede PDF, nachdem ich sie an die Druckerwarteschlange gesendet habe (del %% f). Shashank zeigte ein Beispiel für das Verschieben der Dateien in ein anderes Verzeichnis, wenn das was Sie tun müssen

%Vor%     
Michael Gargan 18.10.2017 12:46
quelle
4

Ich weiß, dass dies eine alte Frage ist, aber ich war in letzter Zeit mit dem gleichen Problem konfrontiert und keine der Antworten funktionierte für mich:

  • Eine alte Version von Foxit Reader konnte nicht gefunden werden
  • Wie @pilkch sagte, fügt 2Printer eine Berichtsseite hinzu
  • Adobe Reader öffnet eine GUI

Nachdem ich ein wenig mehr gesucht habe, habe ich folgendes gefunden: Ссылка .

Es ist eine einfache exe, die Sie mit dem Dateinamen aufrufen und auf den Standarddrucker (oder einen von Ihnen angegebenen) drucken. Von der Seite:

  

PDFtoPrinter ist ein Programm zum Drucken von PDF-Dateien über die Windows-Befehlszeile. Das Programm ist allgemein für die Windows-Befehlszeile und auch für den vDos-DOS-Emulator konzipiert.

Um eine PDF-Datei mit dem Standard-Windows-Drucker zu drucken, verwenden Sie diesen Befehl:

%Vor%

Um auf einen bestimmten Drucker zu drucken, fügen Sie den Namen des Druckers in Anführungszeichen ein:

%Vor%

Wenn Sie auf einem Netzwerkdrucker drucken möchten, verwenden Sie den Namen, der in den Windows-Druckdialogfeldern angezeigt wird (und beachten Sie dabei die zwei Backslashes am Anfang des Namens und den einzelnen Backslash nach dem Servernamen):

%Vor%     
scripts 27.12.2017 15:30
quelle
3

Es sieht so aus, als ob Ihnen der Druckername, der Treiber und der Port in dieser Reihenfolge fehlen. Ihr letzter Befehl sollte wie folgt aussehen:

%Vor%

Zum Beispiel:

%Vor%

Hinweis: Um die Druckerinformationen zu finden, klicken Sie mit der rechten Maustaste auf Ihren Drucker und wählen Sie Eigenschaften. In meinem oben gezeigten Fall stimmen der Druckername und der Treibername überein - aber Ihre Informationen können abweichen.

    
rhp997 30.10.2013 23:31
quelle
3

Ich hatte das gleiche Problem mit dem Drucken mehrerer PDF-Dateien hintereinander und fand nur eine Umgehung mit der 2Printer-Software. Befehlszeilenbeispiel zum Drucken von PDF-Dateien:

%Vor%

Es ist kostenlos für nicht-kommerzielle Nutzung in Ссылка

    
Lei 14.08.2014 20:34
quelle
3

Die Verwendung von Acrobat Reader ist keine gute Lösung, insbesondere Befehlszeilenattribute sind nicht dokumentiert. Außerdem bleibt das Acrobat-Reader-Fenster nach dem Druckvorgang geöffnet. PDF-Dateien sind den Druckertreibern bekannt, daher finden Sie möglicherweise bessere Tools wie 2Printer.exe oder RawFilePrinter.exe. Meiner Meinung nach hat RawFilePrinter einen besseren Support und einen klareren Lizenzierungsprozess (du zahlst einmal die Spende und du kannst RawFilePrinter in vielen Projekten verteilen, die du magst - sogar neue Versionen funktionieren mit einer zuvor erworbenen Lizenz)

%Vor%

Neueste Version zum Herunterladen: Ссылка

    
zuko 15.06.2016 08:10
quelle
3

Die Fehlermeldung sagt Ihnen.

Probieren Sie es einfach

aus %Vor%

Wenn Sie die Zeichenfolge in einfache Anführungszeichen setzen, wird alles innerhalb einer gültigen Zeichenfolge gespeichert, einschließlich der " -Zeichen. Durch Entfernen der einfachen Anführungszeichen verarbeitet die Shell die dbl-Anführungszeichen als "Wrapper".

Ich würde auch die Dateiname-Variable in dbl-Anführungszeichen einschließen, damit Sie einfach Dateien mit Leerzeichen in ihren Namen verarbeiten können, d. h.

%Vor%

IHTH

    
shellter 01.10.2013 20:38
quelle
1
%Vor%

Versuchen Sie das. Vielleicht haben Sie eine andere Version von Reader, so dass das Problem ist ..

    
Shashank Bhat 23.05.2014 09:45
quelle

Tags und Links