Konvertieren von .doc oder .docx in .pdf im Batch

18

Ich muss eine Reihe von .docoder .docxDateien .pdfim Terminal stapelweise konvertieren , ohne eine GUI zu verwenden.

Es wäre hilfreich, wenn ich mehrere Dateien gleichzeitig verarbeiten könnte.

Ich möchte auch so viele Metadaten wie möglich pflegen.

Ringtail
quelle
Die beste Antwort ist, eine andere Anwendung zu installieren und einen "PDF-Drucker" zu verwenden. Was ist falsch mit einer CLI-Methode oder werde ich die Metadaten verlieren
Ringtail
Ich habe nicht gesagt, dass mit oowriter, gscan2pdf oder einer anderen GUI-Methode etwas nicht stimmt. Ich habe nach der CLI gesucht und beabsichtige, sie in die .bashrc zu integrieren, damit ich sie pdf ~/some_.docxnutzen kann. Danke für den Vorschlag.
Ringtail
1
Siehe auch diese Antwort .
Takkat
@ Takkat - Diese Antwort bringt es für mich in eine doppelte Zone.
RobotHumans

Antworten:

28

lowriter kann als Kommandozeilenwerkzeug verwendet werden (lowriter ist ein Teil von LibreOffice)

lowriter --convert-to pdf *.doc
convert /home/bodhi/Documents/testdoc2.doc -> /home/bodhi/Documents/testdoc2.pdf using writer_pdf_Export
convert /home/bodhi/Documents/testdoc.doc -> /home/bodhi/Documents/testdoc.pdf using writer_pdf_Export

evince testdoc.pdf

Ich habe kein Windows, also testdoc hier herunterladen

www.mltweb.com/prof/testdoc.doc

Panther
quelle
libreofice wirft mit dieser Methode Fehler aus und beschwert sich, /home/user/documents/test.docx blah
Ringtail
Welchen Befehl hast du benutzt? Hast du eine test.docx?
Panther
1
Funktioniert perfekt für mich! Verwenden Sie
kein
1
lowriter konvertiert docx-dateien nicht richtig. Zumindest nicht immer.
Skeptical Jule
1
Als ich Ihren vorgeschlagenen lowriterBefehl zum ersten Mal unter Ubuntu 12.04 ausprobierte , öffnete er ein Begrüßungsfenster und fror ein. Ich habe es mit Cc getötet und es ohne DISPLAYVariable erneut versucht . Diesmal wurde zuerst ein Fehler wegen fehlender Anzeige ausgegeben, das Dokument jedoch problemlos konvertiert. Wird erwartet, dass der Befehl nur ohne DISPLAYUmgebungsvariable ausgeführt werden kann?
Kasperd
7

Ich benutze unoconv, die alle von unterstützten Formate konvertiert LibreOffice.

Francisco Dreyfuss
quelle
1
Nur für die Aufzeichnung: $ unoconv myfile.docx(es schafft myfile.pdf)
Tokland
3

Ich benutze das folgende Skript:

for f in *.doc
do
lowriter --headless --convert-to pdf "$f"
done

--headless verhindert, dass Libreoffice Hunderte von Dateien öffnet und schließlich abstürzt, wenn Sie dies mit Verzeichnissen versuchen, die viele DOC-Dateien enthalten

Bruni
quelle
0

Meiner Meinung nach ist der beste Weg mit unoconv.

Installieren Sie zuerst das Paket:

sudo apt install unoconv

und konvertieren Sie dann nach pdf mit diesem Befehl:

unoconv -f pdf XXYY.docx

(Ersetzen Sie XXYY.docxdurch den Namen Ihrer Datei.)

user882893
quelle
Gründe, warum Sie sich gegen andere Optionen entscheiden sollten?
Gatorback