Befehl | Auswirkung auf |
---|---|
set | Ändert nur unmittelbar Variablen für die aktuelle Shell. Die Änderungen werden in keine Subshells oder von der Shell gestarteten Programme übernommen. |
export | Setzt Variablen für die aktuelle Shell und alle Untershells und Programme die durch diese Shell gestartet werden |
env | Startet einen Prozess und setzt bestimmte Umgebungsvariablen. Die Umgebungsvariablen der Shell von der ggf. gestartet wirdt ändern sich dabei nicht |
Beispiel:
set eins=1 echo $eins
<shx bash> export mytest=„hallo“ echo $mytest hallo /bin/bash echo $mytest hallo </sxh>
/usr/bin/env blafasel="hallo" /usr/bin/zsh -c 'echo $blafasel' hallo set | grep blafasel
Mit einfachen Anführungszeichen („richtig“):
blafasel="wiedersehen" /usr/bin/env blafasel="hallo" /usr/bin/zsh -c 'echo $blafasel' hallo
Mit doppelten Anführungszeichen („falsch“):
blafasel="wiedersehen" /usr/bin/env blafasel="hallo" /usr/bin/zsh -c "echo $blafasel" wiedersehen