The -f option requires the archive to operate on as an argument, see man tar(1).
Use - to extract from stdin (provided by the pipe pv "file.tar.xz" | in your case):
pv "file.tar.xz" | tar -xJf-
As - is usually the compiled-in default archive (you can probably check with tar --show-defaults), you might be able to omit the -f option altogether and simply use
pv "file.tar.xz" | tar -xJ
0
Daniel Bentes
On
this work for me: pv "file.tar.gz" | tar -xzf - -C target_directory
The
-f
option requires the archive to operate on as an argument, see man tar(1).Use
-
to extract fromstdin
(provided by the pipepv "file.tar.xz" |
in your case):As
-
is usually the compiled-in default archive (you can probably check withtar --show-defaults
), you might be able to omit the-f
option altogether and simply use