前面小节介绍了如何设置环境变量、查看环境变量,本小节介绍如何使用 unset
命令删除全局环境变量和局部环境变量。
1. 删除全局环境变量
在上小节中,在 /etc/profile
文件中添加的 test_val=my_test_dog
变量是一个全局环境变量,可以使用 unset
命令删除这个全局环境变量,命令如下:
echo $test_val
unset test_val
echo $test_val
执行结果如下图:
Tips :因为
test_val
变量的值在文件/etc/profile
中,被unset
命令删除之后,可以重新使用source /etc/profile
命令更新权限,重新获取到test_val
变量的值。
2. 在 shell 子进程中删除环境变量
在 shell
子进程中可以使用 unset
命令删除指定的环境变量名,命令如下:
new_val="mybj"
export new_val
bash
echo $new_val
unset new_val
echo $new_val
exit
echo $new_val
执行结果如下图:
3. 小结
本小节主要介绍如何使用 unset
命令删除环境变量,需要注意的是在 shell
子进程中可见的全局环境变量,使用 unset
命令删除只影响当前子进程的可见性,不会影响到父 shell
进程。另外一般在使用环境变量时,变量名前面要带上 $
,若是对变量操作,则不需要前面的 $
。