[英]How do I delete an exported environment variable?
在安装gnuplot之前,我设置了环境变量GNUPLOT_DRIVER_DIR = /home/gnuplot/build/src
。 在安装过程中,出了点问题。
我想删除GNUPLOT_DRIVER_DIR
环境变量。 我怎样才能实现它?
unset
是您要查找的命令。
unset GNUPLOT_DRIVER_DIR
测试 DUALCASE 变量是否存在:
el@apollo:~$ env | grep DUALCASE
el@apollo:~$
它没有,因此创建变量并将其导出:
el@apollo:~$ DUALCASE=1
el@apollo:~$ export DUALCASE
检查它是否存在:
el@apollo:~$ env | grep DUALCASE
DUALCASE=1
它在那里。 所以摆脱它:
el@apollo:~$ unset DUALCASE
检查它是否仍然存在:
el@apollo:~$ env | grep DUALCASE
el@apollo:~$
DUALCASE 导出的环境变量被删除。
在登录时将所有局部变量取消设置回默认值:
el@apollo:~$ CAN="chuck norris"
el@apollo:~$ set | grep CAN
CAN='chuck norris'
el@apollo:~$ env | grep CAN
el@apollo:~$
el@apollo:~$ exec bash
el@apollo:~$ set | grep CAN
el@apollo:~$ env | grep CAN
el@apollo:~$
exec bash
命令清除了所有局部变量,但不清除环境变量。
在登录时将所有环境变量取消设置回默认值:
el@apollo:~$ export DOGE="so wow"
el@apollo:~$ env | grep DOGE
DOGE=so wow
el@apollo:~$ env -i bash
el@apollo:~$ env | grep DOGE
el@apollo:~$
env -i bash
命令在登录时将所有环境变量清除为默认值。
因为最初的问题没有提到变量是如何设置的,而且因为我到这个页面寻找这个特定的答案,所以我添加了以下内容:
在 C shell (csh/tcsh) 中有两种设置环境变量的方法:
set x = "something"
setenv x "something"
行为的不同之处在于,使用setenv命令设置的变量会自动导出到子 shell,而使用set 设置的变量则不会。
要使用set取消设置变量集,请使用
unset x
要使用setenv取消设置变量,请使用
unsetenv x
注意:在以上所有内容中,我假设变量名称是“x”。
学分:
https://www.cyberciti.biz/faq/unix-linux-difference-between-set-and-setenv-c-shell-variable/ https://www.oreilly.com/library/view/solarism-7-参考/0130200484/0130200484_ch18lev1sec24.html
这也可能有效。
export GNUPLOT_DRIVER_DIR=
如上述答案所述,如果您使用export
设置变量,则unset GNUPLOT_DRIVER_DIR
应该可以工作。 如果您在~/.bashrc
或~/.zshrc
永久设置了它,那么只需从那里删除它就可以了。
在 Linux 和 macOS 上,您可以使用命令unset
删除环境变量。
unset GNUPLOT_DRIVER_DIR
您可以编辑您的 shell 配置文件,例如/etc/profile.d
目录中的.bashrc
或.bash_profile
并删除导出变量的行。
.bashrc file:
nano ~/.bashrc
然后,搜索行 export GNUPLOT_DRIVER_DIR
并将其删除。 然后保存文件。
使用setx
命令删除环境变量。
setx GNUPLOT_DRIVER_DIR ""
您可以在以下链接中找到有关环境变量以及如何管理它们的更多信息:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.