Re: [PATCH] t0300-credentials: Word around a solaris /bin/sh bug
- From
Jeff King <peff@peff.net>
- Date
- Feb 3, 2012, 21:55 UTC
- Message-ID
- <20120203215507.GB3472@sigill.intra.peff.net>
- In-Reply-To
- <7vr4ybmvrq.fsf@alter.siamese.dyndns.org>
On Fri, Feb 03, 2012 at 01:50:33PM -0800, Junio C Hamano wrote:
Show 20 quoted lines
> > write_script foo.sh "$SHELL_PATH" <<-\EOF
> > echo my arguments are "$@"
> > EOF
>
> I first thought that the order of parameters were unusual, but with that
> order, you could even go something fancier like:
>
> write_script () {
> case "$#" in
> 1) case "$1" in
> *.perl | *.pl) echo "#!$PERL_PATH" ;;
> *) echo "#!$SHELL_PATH" ;;
> esac
> 2) echo "#!$2" ;;
> *) BUG ;;
> esac >"$1" &&
> cat >>"$1" &&
> chmod +x "$1"
> }
> Nice. I was going to suggest a wrapper like "write_sh_script" so you didn't have to spell out $SHELL_PATH, but I think the auto-detection makes sense (and falling back to shell makes even more sense, as that covers 99% of the cases anyway).
-Peff