Ausführung nach dem Laden der zweiten Shell /bin/bash nicht möglich?

Ausführung nach dem Laden der zweiten Shell /bin/bash nicht möglich?

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

verwandte Informationen