Was ist der Unterschied zwischen "VAR = ..." und "Export VAR = ..."?


11

Was ist der Unterschied dabei?

$ MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=384m"

zu tun

$ export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=384m"

und gibt es irgendwelche Nebeneffekte bei einer SSH-Verbindung?

Antworten:


10

Der erste setzt den Wert auf die Variable. Zum Beispiel können Sie tun

echo $MAVEN_OPTS

und lassen Sie es den Wert zurückgeben, aber wenn Sie dies außerhalb Ihrer Shell ausgeben würden, wird eine leere Zeichenfolge zurückgegeben.

Es kommt herein export .

Exportieren ist eine Anweisung an die Shell. Es weist die Shell an, diese Umgebungsvariable anderen Programmen zur Verfügung zu stellen. Ohne den Export sind sie nur in der Shell selbst verfügbar.

Wenn Sie die Variable wollen permanent verfügbar sein ssh liest ~/.ssh/environment, ssh2liest /etc/environmentund ~/.ssh2/environment, und fügt Zeilen des Formats VARNAME = Wert für die Umwelt. Von der sshManpage .


Wenn ich den Export innerhalb einer SSH-Verbindung und die Trennung ausführe, ist diese Variable für nachfolgende Verbindungen nicht verfügbar. Wie mache ich es dauerhaft?
Pomario

Natürlich nicht :) @pomario in den Methoden ssh und ssh2 zum Hinzufügen von envs hinzugefügt!
Rinzwind

Nein, warte! :) Ich meine, ich verbinde mich mit SSH mit dem Server und möchte eine Umgebungsvariable hinzufügen, auf die die Jenkins-Weboberfläche zugreifen kann. Gibt es eine Möglichkeit, dies zu erreichen?
Pomario

7
MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=384m"

Legt eine Shell-Variable mit dem Namen fest MAVEN_OPTS. Es folgt wahrscheinlich ein export MAVEN_OPTSBefehl, um diese Variable als Umgebungsvariable für untergeordnete Programme verfügbar zu machen, oder ein Shell-Befehl, der sie wie folgt verwendetjava $MAVEN_OPTS ...

export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=384m"

Legt eine Umgebungsvariable mit dem Namen fest MAVEN_OPTS . Diese Umgebungsvariable steht auch untergeordneten Programmen zur Verfügung.

Es gibt keine Nebenwirkungen, außer dass einige Java-Speichergrenzen angepasst wurden maven(ein Build-System iirc).


verdammt noch mal Lekensteyn. Das ist heute das 4. Mal. Mach etwas anderes! >: D
Rinzwind

@Rinzwind Tun dies in #bumblebee auf Freenode IRC: P
Lekensteyn

Mehr als 2 gute Antwort ist keine schlechte Sache :)
Tachyons
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.