bash 脚本中两次 export 同一个变量会改变该变量的值吗?

我有个 bash 脚本,伪代码如下:

使用内网下载一些东西
......
export https_proxy='192.168.1.133:1080' #第一次
通过设置代理使用外网下载一些东西
......
export https_proxy='' #第二次
使用内网下载一些东西
......

我想请问一下我第二次 export https_proxy 能达到清空这个变量的值的目的吗?因为之后的下载我不想走代理,我这个写法能否达到我的期望呢?谢谢。

阅读 2.1k
2 个回答

把你的

export https_proxy=''

改成

unset https_proxy

export全局只需要一次,无论后续是否加export都不影响你的变量会注入子进程的事实

你的第二个赋值会成功,但不是清空,而是设置成空字符串而已。如果你想删除变量,应该用unset

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题