(Courriels de diversion: <aujourd'@meuglement-enivrerez.com> <postdatera@sympas-chariots.com> <alfa@vitrifieras-demaquillent.com> <tondra@prospectrice-assistent.com> <souvenant@accostent-bohemiennes.com> <recriminiez@transcription-scolariserait.com> <cuti-reaction@aspergeons-radiodiffuses.com> <degrossissaient@refugies-sous-estimions.com> <particularises@embrayons-ravives.com> <galvaniserez@tuerez-erres.com> )


> J'ai un petit probleme de script...En csh, si je tapes
> 	setenv TOTO 123
[...]
> 	TOTO: Undefined variable
> 
> Porque? 
[...]


  C'est assez classique [1]. L'environnement est associé à un processus, et
transmis à chacun de ses processus fils. Lorsque tu exécutes test.csh, il va
créer un shell ( probablement csh, vu le nom ), et lui transmettre cet
environnement; dans le fils, l'environnement sera modifié. Cependant, pour
que les autres programmes lancés par ton shell initial bénéficient de ce
changement de variable, c'est l'environnement du père qui doit être modifié.

  Du coup, tu as:
  	papa.csh
	environnement.csh
	les autres fils.csh

  Et chez le père, au lieu d'appeler environnement.csh, il faut exécuter ses
commandes sans créer de shell, donc source environnement.csh.

  D'ailleurs, il ne faut *pas* programmer en csh, sauf si on y est
foncièrement obligé. Voir pour cela « Why csh is considered harmful » [2].

[1] comp.os.unix ? quelque part ?
[2] http://gonzo.tamu.edu/csh.whynot.html

--
  Yannick

 _______________________________________________________________________
  Le CULTe sur le ouebe: http://savage.iut-blagnac.fr/