当然,既然可以创建新的环境变量,自然也能删除已经存在的环境变量。可以用unset命令
完成这个操作。在unset命令中引用环境变量时,记住不要使用$。
$ echo $my_variable
I am Global now
$
$ unset my_variable
$
$ echo $my_variable
$
窍门 在涉及环境变量名时,什么时候该使用$,什么时候不该使用$,实在让人摸不着头脑。
记住一点就行了:
如果要用到变量,使用$;
如果要操作变量,不使用$。
这条规则的一个例外就是使用printenv显示某个变量的值。
在处理全局环境变量时,事情就有点棘手了。如果你是在子进程中删除了一个全局环境变量,
这只对子进程有效。该全局环境变量在父进程中依然可用。
$ my_variable=”I am Global now”
$
$ export my_variable
$
$ echo $my_variable
I am Global now
$
$ bash
$
$ echo $my_variable
I am Global now
$
$ unset my_variable
$
$ echo $my_variable
$ exit
exit
$
$ echo $my_variable
I am Global now
$
和修改变量一样,在子shell中删除全局变量后,你无法将效果反映到父shell中。