[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
the context of expansion for output redirection
From: |
Lewis Hyatt |
Subject: |
the context of expansion for output redirection |
Date: |
Tue, 29 Sep 2009 04:24:36 +0000 (UTC) |
User-agent: |
Loom/3.14 (http://gmane.org/) |
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
- the context of expansion for output redirection,
Lewis Hyatt <=