Hello- I was somewhat surprised to see the following behavior (this is 3.1.17):
$ x=0; /bin/echo > /tmp/$((++x)); echo $x 0 $ x=0; echo > /tmp/$((++x)); echo $x 1 I guess in the first case the expansion of $((++x)) is taking place after forking, whereas in the second case there is no forked process so the expansion happens in the context of the current shell. I would have thought that both cases would output "1", though. Is this expected or documented anywhere? Thanks very much. -Lewis