[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Process group id of first command in command substitution (bash4 vs
Re: Process group id of first command in command substitution (bash4 vs bash3)
Thu, 15 Mar 2012 14:20:35 +0100
Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20120216 Thunderbird/10.0.1
On 03/10/2012 09:30 PM, Chet Ramey wrote:
On 2/20/12 1:25 PM, Roman Rakus wrote:
I'm not sure if it's a bug or not, but there is change between old bash 3.2
and bash 4.2.
When you run a script:
$(sleep 1; sleep 2)
in bash 4.2 the first sleep has same group id as parent shell. However in
bash 3.2 it has different group id.
Is it bug or not? I'm not able to find documentation for this change. And
seems that POSIX says nothing about it.
The intent of the bash code has always been that the process group of
commands running command substitutions be the same as the parent shell.
That way they can get the same signals. I read Posix as supporting this
interpretation, since the -m option applies to jobs and command
substitutions are not jobs.
OK, so it was bug in previous versions of bash.