LibreOffice Writer - Datei von der Kommandozeile (CLI) laden und speichern

LibreOffice Writer - Datei von der Kommandozeile (CLI) laden und speichern

Mir ist aufgefallen, dass LibreOffice Writer eine gute Qualität hat: Wenn ich eine DOCX-Datei lade und sofort speichere, unterscheidet sich die gespeicherte Dateistruktur ein wenig von der Originaldatei – und zwar im positiven Sinne –, wodurch einige Probleme mit der DOCX-Struktur usw. gelöst werden (was mir später eine bessere Verarbeitung mit Apache POI ermöglicht).

Ich möchte es einfach verwenden, um .docx-Dateien zu reparieren, indem ich sie lade und sofort speichere – entweder über die Befehlszeile oder indem ich die Writer-Funktionen direkt aufrufe.

Wäre für einige Lösungshinweise dankbar.

Antwort1

libreofficeSie können das CLI-Tool verwenden . Es bietet eine --convert-toOption zum Konvertieren von Dateien, mit der Sie Dateien in das gewünschte Format konvertieren können. Wenn Sie dies verwenden, ohne ein Ausgabeverzeichnis anzugeben,überschreibtdie Originaldatei jedoch, und Sie können ihr keinen anderen Ausgabedateinamen geben. Umgehen Sie das, indem Sie die Datei zuerst konvertieren /tmp/und sie anschließend zurück verschieben:

libreoffice --convert-to docx --outdir /tmp/ NAME.DOCX && mv /tmp/NAME.DOCX ./NEWNAME.DOCX

Sie müssen nur die fettgedruckten Großbuchstaben ändern.NAME.DOCXzu Ihrem Eingabedateinamen undNEWNAME.DOCXzum gewünschten Ausgabedateinamen.

In der bashBefehlszeile können Sie dies wie folgt verkürzen:

libreoffice --convert-to docx --outdir /tmp/ NAME.DOCX && mv !#:4!#:5 ./NEWNAME.!#:2

Dies verwendetbashGeschichte Erweiterungdamit Sie Pfade und Dateinamen nicht mehrfach eingeben müssen – Sie müssen nurNAME.DOCXzu Ihrem Eingabedateinamen undNEWNAMEzum gewünschten Ausgabedateinamen ohne Erweiterung.

verwandte Informationen