From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22727 invoked from network); 9 Mar 1999 15:58:32 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 9 Mar 1999 15:58:32 -0000 Received: (qmail 3366 invoked by alias); 9 Mar 1999 15:57:21 -0000 Mailing-List: contact zsh-users-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 2202 Received: (qmail 3357 invoked from network); 9 Mar 1999 15:57:17 -0000 From: "Michael Barnes" Date: Tue, 9 Mar 1999 10:57:09 -0500 To: zsh users mailing list Subject: Re: Remove a PATH component Message-ID: <19990309105709.A30810@vt.edu> Mail-Followup-To: zsh users mailing list References: <19990309163323.A36932@physik.uni-dortmund.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.1us In-Reply-To: <19990309163323.A36932@physik.uni-dortmund.de>; from Klaus Wacker on Tue, Mar 09, 1999 at 04:33:23PM +0100 Try testing for ZSH_VERSION. On Tue, Mar 09, 1999 at 04:33:23PM +0100, Klaus Wacker wrote: > Dear zsh, I am trying to write a script to be sourced which removes > PATH components matching a given pattern and which is supposed to be > usable from zsh as well as ksh, bash etc. The best I have come up with > so far is the following: > > ----------cut-here---------------------------------------- > oldifs="$IFS" > IFS=: > if [[ $SHELL = *zsh ]] > then > set ${=PATH} > else > set $PATH > fi > IFS="$oldifs" > PATH= > for i > do > case $i in > *tetex*) > ;; > *) > PATH=$PATH:$i > ;; > esac > done > PATH=${PATH#:} > ----------cut-here---------------------------------------- > > This works for people who stick with their login shell, but not for > someone who calls ksh from zsh because then SHELL remains set to zsh. > My first try was to test $0 instead of $SHELL, but that gets set to > the name of the file being sourced by zsh (with some option settings). > > Does anybody have a better idea either for a reliable test on whether > zsh is running or for a way which avoids the test? > > (I know that the above fragment breaks with 10 or more PATH components > - I should use a while loop with shift instead of the for loop). > > -- > Klaus Wacker wacker@Physik.Uni-Dortmund.DE > Experimentelle Physik V http://www.physik.uni-dortmund.de/~wacker > Universitaet Dortmund Tel.: +49 (231) 755 3587 > D-44221 Dortmund Fax: +49 (231) 755 3569