Say I have a command foo
which takes a filename argument: foo myfile.txt
. Annoyingly, foo
doesn't read from standard input. Instead of an actual file, I'd like to pass it the result of another command (in reality, pv
, which will cat the file and output a progress meter as a side effect).
Is there a way to make this happen? Nothing in my bag of tricks seems to do it.
(foo
in this case is a PHP script which I believe processes the file sequentially).
I'm using Ubuntu and Bash
EDIT Sorry for the slightly unclear problem description, but here's the answer that does what I want:
pv longfile.txt | foo /dev/stdin
Very obvious now that I see it.