On 5/25/19 1:54 AM, Neven Sajko via arch-general wrote: > Regarding using bash as sh: > >> Bash runs POSIX scripts just fine. > > Bash does not run some POSIX scripts fine. See > https://lists.gnu.org/archive/html/bug-bash/2017-08/msg00087.html , > for example. In that case an executable named ^ can not be called. I think Chet Ramey did a pretty good explanation in the linked mailing list about why this is a fundamental misunderstanding of what "POSIX" means, but just to be extra sure... you are aware that POSIX defines `command ^` as the only true, correct POSIX way to suppress shell extensions and functions and ensure lookup as a true utility (and "^" is not a builtin utility in bash, but if you needed to suppress those too, enable -n ^ 2>/dev/null)? Of which there are many -- by definition, creating a shell that has useful functionality above and beyond being a dumb clone of the 1980s Bourne shell requires, well, adding new things that conflict with your "unspecified functionality should do simple $PATH lookups". Anyway I suspect this thread is not the best place to begin a fundamental discussion about whether GNU bash is allowed to claim it implements POSIX. Also I doubt dracut does insane things like attempt to invoke a utility named "^", with or without doing the POSIX thing and disambiguating it with the use of the command utility. -- Eli Schwartz Bug Wrangler and Trusted User
Attachment:
signature.asc
Description: OpenPGP digital signature