私はループでいくつかのコマンドを実行しており、出力を保存せずにlibreoffice(calc)で開きたいです。
私が試したことは次のとおりです。
libreoffice --calc <(process m n)
libreoffice --calc < $(process m n)
process m n | libreoffice --calc
最初の2つではエラーが発生し、3番目ではlibreofficeが開きますが、ファイルは開かれません!
process
しかし、出力をファイルに保存してf
開くとlibreoffice f
機能します!
私が何か間違っているのか、それともlibreofficeの制限ですか?私の質問はローカル保存を避ける方法はありますか?
答え1
LibreOfficeの制限事項/欠落している機能(?)のようです。
test.csv
有効なCSVファイルで私がしたことは次のとおりです。
libreoffice --calc test.csv
test.csv
: 予想通り「Calc」で開きますcat test.csv | libreoffice --calc
:空のスプレッドシートでCalcを起動します。
man libreoffice
状態:
--calc 新しい Calc ドキュメントで始まります。
標準入力からの読み方については言及しません。
同様の情報は次のとおりです。STDINを介してOpen Officeにデータを提供できますか?
ローカルストレージを避けるためのヒント:
- データファイルをビルドするコマンドはループで実行されるため、常に同じファイルが作成されます。一時データでリポジトリを埋めるのを防ぎます。
- 一時記憶域に書き込む(例:
/tmp
tmpfs
ファイルシステムへの書き込み(mount | grep tmpfs
次の項目をリストします。通常/dev/shm
)