Portability of shell scripts from other *nixes

Jerry jerry at seibercom.net
Thu Jan 26 12:36:51 UTC 2012

On Wed, 25 Jan 2012 16:08:07 -0600
Doug Poland articulated:

> Hello,
> I'm trying port some shell scripts to FreeBSD that were originally
> written on Darwin (OS X).
> The issue I'm having is the shebang line of the scripts in OS X is
> #!/bin/sh, and it turns out that is really an instance of bash, and
> the code contains some bashisms.  On FreeBSD I have bash in
> /usr/local/bin/bash.
> Is there an "easy/best" way to have a single shebang that works on
> both OS's?  I'd rather not change FreeBSD's bourne shell to bash with
> any symlinking of /usr/local/bin/bash to /bin/sh.

I have written several scripts for use on different OSs, all written in
Bash since that is my preferred scripting language, and have used this
as the shebang quite effectively:

	#!/usr/bin/env bash

By the way, what version of Bash? If it is v4.x there are many
improvements that do not work on older v3.x and v2.x versions. 

Jerry ♔

Disclaimer: off-list followups get on-list replies or get ignored.
Please do not ignore the Reply-To header.
Religion is the anthropomorphization of reality, that behind it all
there's an invisible man pulling invisible strings

More information about the freebsd-questions mailing list