it-swarm.com.de

Wie lösche ich eine exportierte Umgebungsvariable?

Vor der Installation von gnuplot habe ich die Umgebungsvariable GNUPLOT_DRIVER_DIR = /home/gnuplot/build/src gesetzt. Während der Installation ist ein Fehler aufgetreten.

Ich möchte die Umgebungsvariable GNUPLOT_DRIVER_DIR entfernen. Wie kann ich das erreichen?

1382
A. K.

unset ist der Befehl, den Sie suchen.

unset GNUPLOT_DRIVER_DIR
2217

Exemplarische Vorgehensweise zum Erstellen und Löschen einer Umgebungsvariablen in bash:

Prüfen Sie, ob die Variable DUALCASE existiert:

[email protected]:~$ env | grep DUALCASE
[email protected]:~$ 

Tut es nicht, also erstelle die Variable und exportiere sie:

[email protected]:~$ DUALCASE=1
[email protected]:~$ export DUALCASE

Überprüfen Sie, ob es dort ist:

[email protected]:~$ env | grep DUALCASE
DUALCASE=1

Es ist da. Also loswerden:

[email protected]:~$ unset DUALCASE

Überprüfen Sie, ob es noch da ist:

[email protected]:~$ env | grep DUALCASE
[email protected]:~$ 

Die exportierte DUALCASE-Umgebungsvariable wird gelöscht.

Zusätzliche Befehle zum Löschen Ihrer lokalen und Umgebungsvariablen:

Alle lokalen Variablen bei der Anmeldung zurücksetzen:

[email protected]:~$ CAN="chuck norris"
[email protected]:~$ set | grep CAN
CAN='chuck norris'
[email protected]:~$ env | grep CAN
[email protected]:~$
[email protected]:~$ exec bash
[email protected]:~$ set | grep CAN
[email protected]:~$ env | grep CAN
[email protected]:~$

Der Befehl exec bash löschte alle lokalen Variablen, jedoch keine Umgebungsvariablen.

Alle Umgebungsvariablen werden beim Anmelden auf den Standardwert zurückgesetzt:

[email protected]:~$ export DOGE="so wow"
[email protected]:~$ env | grep DOGE
DOGE=so wow
[email protected]:~$ env -i bash
[email protected]:~$ env | grep DOGE
[email protected]:~$

Mit dem Befehl env -i bash wurden alle Umgebungsvariablen beim Anmelden auf den Standardwert zurückgesetzt.

158
Eric Leschinski

Da in der ursprünglichen Frage nicht angegeben ist, wie die Variable festgelegt wurde, und ich auf diese Seite nach dieser bestimmten Antwort gesucht habe, füge ich Folgendes hinzu:

In der C-Shell (csh/tcsh) gibt es zwei Möglichkeiten, eine Umgebungsvariable festzulegen:

  1. set x = "something"
  2. setenv x "something"

Der Unterschied im Verhalten besteht darin, dass Variablen, die mit dem Befehl setenv festgelegt wurden, beim Festlegen der Variablen automatisch in die Subshell exportiert werden mit gesetzt sind nicht.

Um eine mit set gesetzte Variable zu löschen, verwenden Sie

unset x

Um eine mit setenv gesetzte Variable zu löschen, verwenden Sie

unsetenv x

Hinweis: In allen obigen Fällen gehe ich davon aus, dass der Variablenname 'x' ist.

credits:

https://www.cyberciti.biz/faq/unix-linux-differenz-zwischen-set-und-setenv-c-Shell-variable/https://www.oreilly.biz/ .com/library/view/solaristm-7-reference/0130200484/0130200484_ch18lev1sec24.html

5
G Eitan

dies kann auch funktionieren.

export GNUPLOT_DRIVER_DIR=
4
Nilesh K.