Rahmen von "setenv" in csh Versus "export" in der bash

Von dem, was ich gelesen habe, setenv in csh und export im bash-äquivalent sind. Allerdings fand ich einige seltsame Probleme während der Arbeit mit den beiden.

Wenn ich putty öffnen und mit der Eingabe beginnen:

setenv TEMP yes
echo $TEMP  //this give me "yes"

dann gehe ich in die bash und geben

echo $TEMP //this give me "yes" as well

Jedoch, wenn ich es in das Gegenteil um, es würde nicht geben Sie die gleichen Ergebnisse. Speziell, wenn ich zum ersten bash und geben

export TEMP=no
echo $TEMP //this give me "no"

dann gehe ich zurück zu csh-und Typ

echo $TEMP //this give me "Undefined Variable"

Sollte es nicht geben Sie mir "Nein"? Bin ich etwas fehlt?

Danke!

was meinst du mit "dann gehe ich zurück zu csh"? Was genau willst du geben auf "gehen Sie zurück zu csh"?
csh ist mein login-shell, also wenn ich in bash und geben Sie "exit", geht es zurück zur csh.
Recht. beim exportieren einer variable, es wird exportiert, um Kinder, aber es wird nicht exportiert, um das übergeordnete Element. Wenn Sie geben Sie "exit", alle Variablen verschwinden.
wenn Sie sich angemeldet haben, mit csh dann ist die Antwort natürlich rici gab. Sie sagte, Sie habe dieses "in umgekehrter Reihenfolge", was bedeutete, dass Sie bekam dieses ungewöhnliche Ergebnis aus einer csh login gehen sh und dann bash/sh login gehen csh. Sie sollten dies verdeutlichen die in Ihrer Frage.

InformationsquelleAutor Dao Lam | 2013-06-27

Schreibe einen Kommentar