On 7/20/20 10:11 AM, Rusty Bird wrote:
> Chet Ramey:
>>>> Description:
>>>> $! isn't set to the PID of 'bar' for
>>>>
>>>> foo > >(bar)
>>>>
>>>> if 'foo' is an external program (as opposed to a builtin or
>>>> function) - unless it's invoked via 'command'.
>>
>> Redirections are performed in the subshell created to execute `foo', so the
>> process substitution is invoked there and can't affect the parent's $!.
>
> I guess my question is: Would it not make sense to always perform the
> redirection before the subshell is created?
You could make a case for it, but I'm not inclined to invalidate 30+ years
of bash backward compatibility unless the reason is a lot more compelling.
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU [email protected] http://tiswww.cwru.edu/~chet/