[Slackbuilds-users] bashisms?
B Watson
yalhcru at gmail.com
Sat Aug 29 21:05:05 UTC 2015
On 8/29/15, Jim Diamond <Jim.Diamond at acadiau.ca> wrote:
>> There are slight differences when bash is run as "sh" rather than
>> "bash", but they only have to do with which startup files are read
>> (see INVOCATION section in man page).
>
> You are wrong on this last point (according to the bash man page).
> Aside from the startup files being different, there are other changes
> in behaviour when bash is invoked as /bin/sh. (Search the man page
> for all the sentences with "posix".)
I stand corrected, I missed the bit where it says posix mode gets enabled
when run as sh. Probably the biggest thing I see there that influences
SlackBuilds:
| Subshells spawned to execute command substitutionsi [in posix mode]
| inherit the value of the -e option from the parent shell. When not
| in posix mode, bash clears the -e option in such subshells.
But this shouldn't hurt working scripts. I remember a few years back when
a lot of scripts that relied on subshells not inheriting -e suddenly had
to be changed for a new bash version (presumably the one that introduced
the -e inheritance). If they'd all had #!/bin/bash at the top, would
they have needed to be changed?
Sure would be nice if the bash manpage had a POSIX section that summarized
all the differences between regular and posix mode. Sigh.
Maybe I'll start back submitting new slackbuilds as #!/bin/bash and see
if it sticks this time around.
More information about the SlackBuilds-users
mailing list