On Fri, Sep 26, 2014 at 6:06 PM, Mailing Lists <mailinglists@xxxxxxxxxxxxxx> wrote: > > i just ran the "checkbashisms" script from the AUR on my /usr/bin using > the command from the wiki: > > # checkbashisms -f -p $(grep -rlE '^#! ?/bin/(env )?sh' /usr/bin) > > which revealed 470 instances of putative bashisms in scripts using > #!/bin/sh. The grep would find some false positives -- e.g., some perl script might include #!/bin/sh in its body (such as findimagedupes). With dash you don't really need -p, which is more strict. The following will reduce the count drastically: #!/bin/sh for f in /usr/bin/*; do test -f "$f" || continue sed -nr ' /^#!/!d \@^#![[:space:]]*/bin/(env[[:space:]]+)?sh\>@q1 q ' "$f" || checkbashisms -f "$f" done This finds 259 instances for me, of which 208 instances are from a *single* script /usr/bin/libtool -- which apparently really relies on bash. Among The other instances of bashism, many are false positives (if we had removed -f from the checkbashisms command line, some could have been detected), but some are real, such as /usr/bin/bzgrep and /usr/bin/xbmc, but they're mostly an easy fix for upstream. > Assuming that these bashisms all come from upstream, patching > and maintaining them would be a chore. >From my inspection above, bashism is really not that wide spread.