tcsh fix
Avleen Vig
lists-freebsd at silverwraith.com
Thu Nov 11 21:55:44 PST 2004
On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote:
> Personally I am of the opinion that csh (all versions) should be
> removed completely from the base system and relegated entirely to the
> ports system. Other than historical reasons there is not much point in
> having it in the base system.
I strongly disagree. csh and sh should be 'pure' versions. That is to
say, no matter what shell is actually being called as sh or csh, it
should provide a 100% compatible version, no differences, no "upgrades".
This is to provide compatibility whn working with multiple versions of
Unix.
I write many scripts in sh on Solaris, and find they just don't work on
Linux because /bin/sh on Linux is really /bin/bash and is not bacwards
compatible. I HATE this. We shouldn't do this, and should do anything
like this.
> (Originally csh was created to get a shell with better interactive
> features the original Bourne shell and tcsh is much better for
> interactive use than 'classic' csh - indeed a modern /bin/sh is better
> than 'classic' csh. For writing scripts the Bourne-derivatives is much
> better than csh and it has long been strongly recommended that one
> should not write scripts for csh. One cannot even assume that
> all systems have csh installed - Posix doesn't require it but it does
> require /bin/sh to be present.)
and /bin/sh should be classic /bin/sh not some version which is going to
break my shit when I port it over! I'm so glad this is the case with
FreeBSD :-)
> 'csh' does run pure csh, and nothing else. The latest version of csh
> which happens to be renamed to tcsh to be exact. That this latest
> version is not 100% compatible with earlier versions might be
> unfortunate but very few software packages never break backwards
> compatibility.
How about when working with multiple versions of the same shell on
different OS's? surely you can see the problem there.
> > 'sh' should be pure sh, not what Linux does and bastardize it as
> > /bin/bash
>
> There is no such thing as "pure sh". It you believe otherwise please
> tell us what you think such a shell would look like and exactly what
> features should be in it.
> (Hint: Current standards require /bin/sh to have several features that
> were not available on early Unix versions.)
Then we should follow current standards. Not pretend one shell is
another!
> > If someon wants a more powerful shell, they can install it themselves.
>
> Keep in mind that FreeBSD's /bin/sh is a more powerful shell than was
> available in, say, v7 Unix.
Yes but AFAIK it's compatible in every way I've tried with say, Sun's
/bin/sh, and I've tried some pretty complex shell scripts.
--
Avleen Vig
Systems Administrator
Personal: www.silverwraith.com
EFnet: irc.mindspring.com (Earthlink user access only)
More information about the freebsd-hackers
mailing list