long-lived tcsh | /etc/csh.cshrc problem on redhat/fedora core Linux

David G. Miller dave at davenjudy.org
Fri Aug 25 14:16:51 UTC 2006


Robinson Tiemuqinke <hahaha_30k at yahoo.com> wrote:

>Hi,
>
> There is long-live annoying problem/issue with
>redhat/Fedora Core Linux since redhat 7.2, as far as I
>know. the '$?variable' expression in /etc/csh.cshrc
>file blocks users' csh/tcsh scripts from running all
>the time.
>
>give the following test.csh script as an simple
>example:
>
>[root at www ~]# cat /var/tmp/test.csh
>#!/bin/tcsh -Xvn
>echo " I'm here"
>[root at www ~]#
>
>[root at www ~]# /var/tmp/test.csh
>if ( "$group" == "$user" && $uid > 99 ) then
>endif
>if ( $?prompt ) then
>$?prompt: No match.
>[root at www ~]#
> 
>The script fails debugging. it fails at the line "if
>($?prompt) then" inside /etc/csh.cshrc! 
>
>To successfully run and debug csh/tcsh scripts, we
>have renamed the /etc/csh.cshrc to
>/etc/csh.cshrc_redhatShit since redhat 7.2. 
>
> Any one can shed a light on this "problem"?
>
> Thanks.
>
>--Robinson
>
Two comments:

1) The problem only occurs if you use the "n" option.  That is, running 
test.csh with tcsh invoked with "#!/bin/tcsh -Xv" works.
2) The problem goes away under FC5.  I was only able to reproduce the 
problem with FC4.

Now here's something even weirder.  The version of tcsh as given by 
"echo $version" is identical between FC4 and FC5 and the /etc/csh.cshrc 
files also appear to be identical.  There is a difference between the 
rpm versions so maybe somebody at Red Hat fixed it in FC5.  Just to make 
the story complete, the same test fails differently when run on a CentOS 
4.3 (RHEL clone) box.

Cheers,
Dave

-- 
Politics, n. Strife of interests masquerading as a contest of principles.
-- Ambrose Bierce




More information about the fedora-list mailing list