I am running certain commands in a loop and would like to open its output in libreoffice (calc), without storing it.

This is what I have tried:

libreoffice --calc <(process m n)
libreoffice --calc < $(process m n)
process m n | libreoffice --calc

I am getting an error in the first two, whereas for the third one, it opens libreoffice, but no file!

However if I save the output of process to a file f and open libreoffice f, it works!

Is it that I am doing something wrong, or its a limitation of libreoffice? My question is is there any way to avoid local storage?


Looks like a limitation / missing feature (?) in LibreOffice.

What I did, with test.csv being a valid CSV file :

  • libreoffice --calc test.csv : opens test.csv in "Calc" as expected
  • cat test.csv | libreoffice --calc : starts "Calc" with a blank spreadsheet

man libreoffice states :

--calc Starts with a new Calc document.

It doesn't mention reading from standard input.

Similar information here : Is it possible to feed Open Office via STDIN?

Suggestions to avoid local storage :

  • since commands building the data file are run in a loop, always write into the very same file. You'll avoid filling storage with temporary data
  • write into temporary storage areas such as /tmp
  • write into tmpfs filesystems (mount | grep tmpfs to list those. Typically /dev/shm)
  • 1
    Does this really answer the question raised by the OP? – user5325 May 10 at 15:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.