我尝试了以下命令来设置代理yaourt:
export ALL_PROXY=http://proxy.example.com:8080
Run Code Online (Sandbox Code Playgroud)
问题是如何取消设置代理yaourt?通常,如何取消设置当前 shell 中变量的值?
Gil*_*il' 209
要删除环境变量,请运行
unset ALL_PROXY
Run Code Online (Sandbox Code Playgroud)
请注意,环境变量仅在程序及其启动的程序中生效。如果在一个 shell 窗口中设置环境变量,它不会影响其他 shell 窗口。
如果您已添加export ALL_PROXY=…到初始化文件,请将其从那里删除。
您可以export不带参数运行以查看当前 shell 中设置了哪些环境变量。
请记住,要使 shell 变量可用于由该 shell 启动的程序,您需要通过export VAR在赋值后运行VAR=VALUE或组合两者 ( export VAR=VALUE)来导出它。
cof*_*Mug 35
要取消设置 bash 中的绑定变量unset VARIABLE(unset ALL_PROXY在您的情况下)。该命令实际上删除了变量。您还可以通过以下方式将变量的值设置为空
VARIABLE=
Run Code Online (Sandbox Code Playgroud)
或者
VARIABLE=""
Run Code Online (Sandbox Code Playgroud)
不同之处在于后两个命令不会删除变量。您可以通过使用-u标志 withset强制它在替换时将未设置的变量视为错误来查看差异:
/home/user1> var=""
/home/user1> echo $var
/home/user1> set -u
/home/user1> echo $var
/home/user1> unset var
/home/user1> echo $var
-bash: var: unbound variable
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,bash 抱怨varis unbound(在取消其值之后)这是预期的错误(注意这不会发生在第二个 echo 命令中,这意味着它var的值为emptyor null)。