Date: Thu, 26 Jan 2012 13:24:09 +1000 From: Da Rock <freebsd-questions@herveybayaustralia.com.au> To: freebsd-questions@freebsd.org Subject: Re: Portability of shell scripts from other *nixes Message-ID: <4F20C759.7060508@herveybayaustralia.com.au> In-Reply-To: <912B3883-ABA1-4EE7-857B-CA8A55C8B506@polands.org> References: <ac1be76b3dd10516e61861ae253b793f.squirrel@email.polands.org> <28F1F479-EA39-4841-AE54-76F0E512C02B@mac.com> <912B3883-ABA1-4EE7-857B-CA8A55C8B506@polands.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 01/26/12 12:55, Doug Poland wrote: > On Jan 25, 2012, at 18:04 , Chuck Swiger wrote: > >> On Jan 25, 2012, at 2:08 PM, Doug Poland wrote: >>> 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. >> Try using something like: >> >> #!/usr/bin/env bash >> >> (If the shell scripts are something written by Apple rather than by third-parties, please also consider filing a bug report.) >> > This gets me closer, but the scripts behave differently now on OS X. For example, printf's don't output the same. > Try searching on google and find out exactly what sh MacOSX is using. Then you'd have a better idea on what you're working with.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F20C759.7060508>