如何删除导出的环境变量?

在安装gnumap之前,我设置了环境变量GNUPLOT_DRIVER_DIR = /home/gnuplot/build/src。在安装过程中,出现了问题。

我想删除GNUPLOT_DRIVER_DIR环境变量。如何实现?

1317305 次浏览

unset是您要查找的命令。

unset GNUPLOT_DRIVER_DIR

在Bash中创建和删除环境变量的演练:

测试DUALCASE变量是否存在(空输出):

env | grep DUALCASE

它没有,所以创建变量并导出它:

DUALCASE=1export DUALCASE

检查它是否在那里:

env | grep DUALCASE

输出:

Dualcase=1

它在那里。所以摆脱它:

unset DUALCASE

检查它是否仍然存在(空输出):

env | grep DUALCASE

DUALCASE导出的环境变量被删除。

帮助清除本地和环境变量的额外命令:

在登录时取消将所有局部变量设置回默认值:

CAN="chuck norris"set | grep CAN

输出:

='查克诺里斯'

env | grep CAN # Empty output
exec bashset | grep CANenv | grep CAN # Empty output

exec bash命令清除所有局部变量,但不清除环境变量。

登录时取消设置所有环境变量为默认值:

export DOGE="so wow"env | grep DOGE

输出:

DOGE=如此哇

env -i bashenv | grep DOGE # Empty output

env -i bash命令清除了登录时默认的所有环境变量。

这也可能奏效。

export GNUPLOT_DRIVER_DIR=

最初的问题没有提到变量是如何设置的,但是:

C shell(csh/tcsh)设置环境变量有两种方法:

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

行为的不同之处在于,使用set en v命令设置的变量会自动导出到子shell,而使用<强>设置设置的变量则不会。

要取消设置使用<强>设置设置的变量,请使用

unset x

要取消设置使用set en v设置的变量,请使用

unsetenv x

备注:在上述所有情况下,我假设变量名是'x'。

学分:

如上所述,如果您使用export设置变量,unset GNUPLOT_DRIVER_DIR应该有效。如果您在~/.bashrc~/.zshrc中永久设置了它,那么只需将其从那里删除即可。