Ich habe ein Shell-Scripting-Tutorial durchgearbeitet, in dem globale Variablen erklärt werden ( export
). Ich bin auf ein Do-it-yourself-Beispiel gestoßen, das das Konzept globaler Variablen im Shell-Scripting veranschaulicht, und habe es folgendermaßen ausprobiert:
$ cat trial
vech=Bus
echo $vech
/bin/bash
echo "before empty line"
echo $vech
echo "after empty line"
vech=Car
echo $vech
exit
echo $vech
Die erwartete Ausgabe für dieses Programm war:
Bus
before empty line
after empty line
Car
Bus
Aber ich habe:
$ chmod 777 trial
$ ./trial
Bus
$
was mache ich falsch? Ich bin mit dieser Geschmacksrichtung noch nicht vertraut, bitte helfen Sie mir.
Antwort1
Versuchen Sie dies mit einemhier-Dokument:
vech=Bus
echo $vech
/bin/bash<<EOF
echo "before empty line"
echo $vech
echo "after empty line"
vech=Car
echo $vech
exit
EOF
echo $vech