I am trying to use process substitution to avoid using temporary files. I tried the following:
diff <(echo "a") <(echo "b")
on mingw32/msys (from http://www.mingw.org/ as of Dec 2013), and got:
sh: syntax error near unexpected token `('
Running the same thing on Ubuntu 12.04 returns:
1c1
< a
---
> b
The msys I use probably has bash 3.1. I was wondering if it is possible to work around the issue so that the same job can be done in msys/older bash without using temporary files.
Thanks.
I mananed to do process substitution in bash 3.x. The syntax is correct. It is supported by bash shell. So I would suggest to check what shell your are running and execute somiting like:
Process substitution is not a POSIX compliant feature. To enable try to run:
See also this for more info.
The other way is to use named pipes. I tested on GNU bash version 4.1.2(1):
See Working with Named Pipes