How do I delete an exported environment variable?
在安装gnuplot之前,我设置了环境变量
我想删除
你要找的是
1 | unset GNUPLOT_DRIVER_DIR |
在bash中创建和删除环境变量的演练:
测试dualcase变量是否存在:
1 2 | el@apollo:~$ env | grep DUALCASE el@apollo:~$ |
它不会,因此创建变量并导出它:
1 2 | el@apollo:~$ DUALCASE=1 el@apollo:~$ export DUALCASE |
检查是否存在:
1 2 | el@apollo:~$ env | grep DUALCASE DUALCASE=1 |
它在那里。所以把它扔掉:
1 | el@apollo:~$ unset DUALCASE |
检查它是否仍然存在:
1 2 | el@apollo:~$ env | grep DUALCASE el@apollo:~$ |
将删除dualcase导出的环境变量。
帮助清除本地和环境变量的额外命令:登录时将所有局部变量重置为默认值:
1 2 3 4 5 6 7 8 9 | 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:~$ |
在登录时将所有环境变量重置为默认值:
1 2 3 4 5 6 | 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:~$ |
因为最初的问题没有提到变量是如何设置的,因为我到了这个页面寻找这个特定的答案,所以我添加了以下内容:
在C shell(csh/tcsh)中,有两种方法可以设置环境变量:
不同的是,使用setenv命令设置的变量会自动导出到子shell,而使用set设置的变量则不会。
要使用set取消设置变量集,请使用
1 | unset x |
要使用setenv取消设置变量集,请使用
1 | unsetenv x |
注意:在以上所有内容中,我假设变量名为"x"。
信用:
https://www.cyberciti.biz/faq/unix-linux-difference-between-set-and-setenv-c-shell-variable/https://www.oreilly.com/library/view/solaristm-7-reference/0130200484/0130200484_ch18lev1sec24.html
这也可能有效。
1 | export GNUPLOT_DRIVER_DIR= |