On Fri, Feb 11, 2000 at 11:51:49PM +0100, Friedrich Hagedorn wrote:
Hallo,
ich will gerade meine PATH-Variable erweitern, und stosse auf folgendes Problem: fredy:~ # echo $[PATH]
Wenn's in [] steht, dann wird das zwischen den Klammern als math. Expression betrachtet: echo $[4 + 9] (oder echo $((4 + 9)))
Das, was Du willst, ist sicher:
PATH="$PATH:/noch/ein/weiter/path/zum/ziel"
Achso mein eigentliches Problem war das mein folgendes kleines Script nicht funktioniert:
echo "setting up ENV variables for the aRts static binary" export KDEDIR=/usr/local/arts export PATH=/usr/local/arts/bin:$PATH
Der PATH ist danach einfach nicht um dieses Verzeichniss erweitert.
Ja, wenn Du dieses Script aufrufst, dann setzt es innerhalb des Scriptes die Variable (kannst ja mal _im_ Script ein `echo $PATH' einfügen -- Du wirst es sehen), aber wenn der Script zu Ende ist, dann ist auch die den Script ausführende Shell zu Ende und alle Änderungen an dem Umgebungsvariablen sind damit auch wieder weg.
Ein Kind kann niemals über die Geschicke seiner Eltern bestimmen. (Unix Prozesssicherheit.) Und Dein zweiter Script ist ein Kind der Login-Shell.
Wenn Du die Zeilen in Deine ~/.bash_profile (oder ~/.bash_login oder ~/.profile) reinschreibst und Dich neu anmeldest, dann wirken die Änderungen auf die Login-Shell.
Wenn Du das immernoch als Script aufrufen willst, dann solltest Du:
source SCRIPT
benutzten, oder an Stelle von `source' einfach `.'. Das führt dann alles in der laufenden Shell aus.
oder: alias aRts='source ~/bin/aRts.env'
You got the idea.
Best regards from Dresden/Germany Viele Gruesse aus Dresden Heiko Schlittermann