I just noticed there is a man page on solaris that details its standards
compliance. Try 'man standards' for the somewhat lengthy details. Here
is the bit I found most relevant:
If the behavior required by POSIX.2, POSIX.2a, XPG4, SUS, or
SUSv2 conflicts with historical Solaris utility behavior,
the original Solaris version of the utility is unchanged; a
new version that is standard-conforming has been provided in
/usr/xpg4/bin. For applications wishing to take advantage of
POSIX.2, POSIX.2a, XPG4, SUS, or SUSv2 features, the PATH
(sh or ksh) or path (csh) environment variables should be
set with /usr/xpg4/bin preceding any other directories in
which utilities specified by those specifications are
found, such as /bin, /usr/bin, /usr/ucb, and /usr/ccs/bin.
-Sam
-----Original Message-----
From: Linux on 390 Port [mailto:[EMAIL PROTECTED] On Behalf Of
Adam Thornton
Sent: Tuesday, April 03, 2007 8:04 PM
To: [email protected]
Subject: Re: Philosophy: connecting to a Linux server
On Apr 3, 2007, at 6:46 PM, Kielek, Samuel wrote:
> I guess all I was trying to indirectly point out was that this
> behaviour is caused by the fact that Solaris has the heirloom Bourne
> shell as /bin/sh (which existed prior to POSIX.2). By the way, the XPG
> version
> (/usr/xpg4/bin/sh) on Solaris does support $().
>
> I do agree and wonder why at this point Sun doesn't either update it
> or move it out of the way (I'm sure some customers still need/want it)
> and put a POSIX.2 compliant shell in its place (bash?).
Or, you know, even the XPG4 one. I mean, really, it's not 1986
anymore (XPG4 would get us all the way to 1988!), and surely you can
stick #!/usr/crusty/bin/sh on your shell scripts that really, really
depend on something that's actually *different* in POSIX (which isn't
much that I'm aware of). I like knowing that I have $() and semi- sane
arithmetic with $(()). If I'm actually using bash-isms, requiring me to
use /bin/bash is fine. But I think that in 2007 I really, really ought
to be able to assume the 2001 POSIX standard will be implemented by the
default shell found in /bin/sh.
I understand that Solaris must go to some lengths to remain bug-
compatible with its former self. But I had naively expected that things
had gotten better since Solaris 2.5 when all the useful stuff was in
/usr/ucb/bin.
Now it's just in xpg4 or, more often. sfw.
I think I've been thoroughly spoiled by GNU userland. I found myself
installing tons of stuff from sunfreeware.com (yes, the same sfw) in
order to get anything actually *done*. I've gotten used to little
things, like --owner 0 --group 0 in tar (a GNU tar extension) to let me
make owned-by-root tarballs for distribution without having to build
them as root. I strongly suspect that NexentaOS might be the best thing
ever: Solaris kernel, Debian userland. I haven't been successful in
installing it under Parallels yet though.
Adam
----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions, send
email to [EMAIL PROTECTED] with the message: INFO LINUX-390 or
visit http://www.marist.edu/htbin/wlvindex?LINUX-390
----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: INFO LINUX-390 or visit
http://www.marist.edu/htbin/wlvindex?LINUX-390