erstellt am: 07. Mai. 2003 18:36
Unities abgeben: 








Du machst gar keinen Fehler. Jede shell (=...term-Fenster) hat seine Umgebungsvariablen. Diese ändern sich nicht von alleine, wenn Du für CATIA das Projekt wechslest.In unserer AIX-Umgebung reicht es nicht, eine neue Shell zu öffnen.
(normal geöffnete Shells bekommen die Projektumgebung, die beim Einloggen aktiv war: AFAIK
wird .profile, auf jeden Fall .dtprofile nur in der Login-shell durchlaufen)
Evtl. hast Du die Möglichkeit, bei dem Mechanismus, mit dem Du das Projekt wechselst, auch eine Shell mit der richtigen Umgebung zu öffnen. (z.B.: CATIA Environment-Fenster mit Männchen am Schreibtisch: linke Maustaste auf Projektname, auf "Open dtterm" o.s.ä. ziehen und loslassen.)
Eine durchgreifende Lösung, die insbesondere in Zusammenspiel mit Shell-Scripten bestens funktioniert:
Mit der Befehlsfolge
> export C_PRJ=<projektverzeichnis> # z.B.: export C_PRJ=uebung
# (siehe l /u/cf/v4 )
> . /u/cf/v4/sys/env/YOUR.env
kann die "aktive" Projektumgebung umgestellt werden, wenn der Projektname bekannt ist.
(Achtung: dies funktioniert in Skripten einwandfrei; werden diese Befehle aber wiederholt in einer Shell angewendet, führt das bald zu einem Variablen-Overflow.)
Um auf das Projekt zu reagieren, das im "CATIA Environment"-Fenster ausgewählt ist (Männchen sitzt am Schreibtisch), könnte man z.B. vorher die Datei $HOME/.catia_environment auswerten.
(z.B. so:
projektverzeichnis=`
awk -F/ '{sub("\.env","",$5);print $5}' .catia_environment
`
)
PS: wenn man die Modeltöpfe in der Reihenfolge haben will, in der sie auch in CATIA auftauchen, mache ich z.B. folgendes:
catpath -l -d catia.model | sort -Ab '-t ' +1