Home
| Calendar
| Mail Lists
| List Archives
| Desktop SIG
| Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings Linux Cafe | Meeting Notes | Linux Links | Bling | About BLU |
On 08/26/2009 05:49 PM, David Rosenstrauch wrote: > On 08/26/2009 05:45 PM, Stephen Adler wrote: >> Hi all, >> >> I'm writing a bash script which I would like to execute the same script >> on a linux and a solaris system. but my problem is that the bash >> executable is in /usr on linux and /usr/bin on solaris. So how do I >> define the first line #! syntax so that the shell which is executing the >> script knows where to pick up the executable. > > Can't you just use: > > #!/bin/sh No, because that shell hasn't been bourne again! :-P Strictly speaking, 'bash' is a superset of 'sh'. Some linux systems make 'sh' a symlink to 'bash', but not all (ubuntu IIRC is one that doesn't), and solaris certainly doesn't. This matters since a linux distro like fedora that just uses bash for sh will not enforce 'sh-only' syntax, whereas ubuntu and solaris, which use actual 'sh' binaries, will. >From the school of hard knocks: unless you're an expert 'sh' programmer, don't develop scripts that start with #!/bin/sh on fedora and the like, since you can't be sure they'll work on systems that actually use the shell you're telling it to use. Matt
BLU is a member of BostonUserGroups | |
We also thank MIT for the use of their facilities. |