On Fri, May 23, 2014 at 4:42 PM, Cook, Malcolm <[email protected]> wrote:
> i'd assumed the commands were not run by any shell but were fork/exec'ed by
> perl. So, whether or not $version, $BASHPID or any other variable is defined
> in such subprocesses would merely depend on whether te were exported from the
> unix environment in which parallel is invoked. In other words, different
> results does not violate POLA here.
One of the reasons a shell is started is to be able to do:
parallel 'echo * > {}' ::: foo
This would not be possible if a shell was not spawned: Both the * and
the > are interpreted by the shell.
There are other technical reasons why it it needed to spawn a shell,
but that is too detailed to cover here.
/Ole