Set parent env with csh script
    Doug Gwyn  
    gwyn at smoke.BRL.MIL
       
    Sun Jan  8 14:58:00 AEST 1989
    
    
  
In article <174 at v7fs1.UUCP> mvp at v7fs1.UUCP (Mike Van Pelt) writes:
>I would like to write a shell script (csh preferred) that will
>set a few environment variables to various things.  Of course,
>just doing   setenv foo bar  in the script only works for that
>subshell and its children, not for the calling shell.  I've
>gone back and forth through all the likely places in the manuals,
>and haven't found any mention of this.
It's implicit in the description of how environment variables work.
>Is it possible for a subshell to changes the calling shell's 
>environment?  How?
There is no official way for a subprocess to alter an ancestor
process's environment.  Specialized ways can be devised.  In
your case, however, probably all you need is to realize that
SOURCING a shell script (as opposed to EXECUTING it) causes the
changes to occur in the invoking shell context (as opposed to
a subprocess context).  Thus you can alter environment variable
via a sourced script that does setenv (or Bourne shell equivalent).
    
    
More information about the Comp.unix.wizards
mailing list