ターミナルウィンドウでLibreOffice Writerファイルを表示するためのツール


18

LibreOffice(.odt)形式のドキュメントファイルをいくつか使用しています。通常、私はもちろんLibreOffice Writerでそれらにアクセスします。しかし、テキスト端末でしかサイトに接続できない場合があります。

これらのファイルの内容をおおよその正しい形式で表示できる端末ベースのツールがあるのだろうか?(ファイルには主に単純なテキスト、箇条書きリスト、およびいくつかの1x1テーブルが含まれているため、フォーマットに関しては比較的単純なものです。)

PSこの質問は、コマンドラインからLibreOffice自体を起動することに関するものではありません(ここで回答します)。



3
元の回答ではありませんが、odt2txt document.odt | lessファイルを直接表示するために使用できます。
-pLumo

@RoVoそれは答えに合っています!odt2txt仕事がうまくいくかどうかは興味深いでしょうlibreoffice --convert-to(広範囲に試してみなくても非常にうまくいくと思います)。後者(私が知る限り)は、stdoutに書き込むことができないため、残念ながら直接パイピングを使用できません。警告:文書の内容をすぐに表示(または検索)したいだけで、書式設定についてodt2txt | …はあまり気にしないのであれば、それが道です。それ以外のlibreoffice場合は、以下で説明するようにドキュメントを変換します。
デザート

2
シンプルなドキュメントは、両方のツールで適切に変換されるようです。残念ながら、テーブルはASCIIテーブルに変換されません
...-pLumo

回答:


21

呼ばれるツールがありますodt2txt変換することができますodtにはtxt

libreofficeと比較して、2つの利点があります。

  • libreofficeがインストールされていない場合(サーバーなど)に軽量
  • ファイルを直接表示するために標準出力に印刷できます。

インストール:

sudo apt install odt2txt

次に、直接表示できますodt

odt2txt document.odt | less

ファイルに変換する場合は、出力をリダイレクトするodt2txt document.odt > fileか、--output=fileオプションを使用します。
デザート

21

libreoffice--convert-toドキュメントをテキストやHTMLなどに変換するために使用できるオプションを提供します。

  • 変換input.odtするにはinput.txt
    libreoffice --convert-to "txt:Text (encoded):UTF8" input.odt

  • .odt現在のディレクトリのすべてを次のように変換し.htmlます。
    libreoffice --convert-to "html:XHTML Writer File:UTF8" *.odt

  • .ods現在のディレクトリのすべてを次のように変換し.csvます。
    libreoffice --convert-to csv *.ods

出力は、お好みのページャまたは端末のブラウザで開くことができます。lessmostまたはw3mちょうど3リストに。


いいね!これを使用して、ファイルに書き込む代わりに、ターミナルで直接txtバージョンを表示できますか?
パック

残念ながら、上記の私のコメントをご覧ください。
デザート

12

LibreOfficeには、--catバージョン5.1には存在するが4.2には存在しないオプションがあります。いつ導入されたのか正確にはわかりません。

libreoffice --cat "Untitled 1.odt" --headless | less

詳細については:

libreoffice --help

この便利なオプションがlibreofficeのマンページにもhelp.libreoffice.org/Common/…にも記載されていないのは残念ですが、少なくともlibreoffice -hリストされています。
デザート
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.