7zip: how to extract to std output?

I have 7z 4.65 and am trying to extract a single file to standard output. The 7z command-line help says -so is the command-line parameter to extract to standard output, but when I try this:

>>> 7z e -so dist\dlogpkg.jar META-INF/MANIFEST.MF

7-Zip 4.65  Copyright (c) 1999-2009 Igor Pavlov  2009-02-03
Error:
I won't write data and program's messages to same terminal

how can I fix this? There doesn't seem to be a command line param to suppress the normal 7z stdout messages.

(edit: the equivalent operation in "unzip" would be

unzip -p dist\dlogpkg.jar META-INF/MANIFEST.MF

which works fine. But I'd like to use 7z for various reasons.)


pipe it to another program such as

  • tee
  • less
  • more

i think tee comes closest to what you want, it drops the 7z stuff and just gives you the content.

% 7z e -so dist\dlogpkg.jar META-INF/MANIFEST.MF | tee

I was also trying to figure this out. This got me what I wanted:

7z x -so my_file.zip 2> /dev/null

On Windows, 7z x -so my_file.zip 2> NUL doesn't work, but redirection to a real file helps:

7z x -so my_file.zip 2> _garbage.txt