Wed 11 Mar 2015 02:15:52 PM UTC, original submission:
Hi there,
GNU parallel is using the SHELL env variable to fork a shell, to execute what the used asked, and I can understand that, BUT, as far as I see it, it may be a bad idea:
- Some uses may use non standard shells (fish, ... ?)
- Some user may use something else than a shell, like a completly other program)
I'm in the case where the SHELL of my user is a shell script doing a task, so my users can log on this account to execute (and interact a bit) with the task, it permit me to control who access this service using ssh keys, etc, like git shell for example.
My shell script is using parallel, and parallel, instead of using /bin/sh used my SHELL environment variable, entering a kind of fork bomb state.
I exported SHELL=/bin/sh to avoid this problem, but I really think that you may not use $SHELL but /bin/sh instead.
This is more a conversation than a bug, parallel may have good reason to use the shell, at first, I didn't even knew that it forked a shell, I though it worked like xargs, forking directly the given program.
Bests,
|