我使用下面的python代码(Python2.7)重置我的(分) OS 6系统的代理,但是我无法重置代理:
代码:
import os
print "Unsetting http..."
os.system("unset http_proxy")
os.system("echo $http_proxy")
print "http is reset"输出:
Unsetting http...
http://web-proxy.xxxx.xxxxxxx.net:8080
http is reset
Process finished with exit code 0它不应该在输出中返回http://web-proxy.xxxx.xxxxxxx.net:8080。
我从终端运行相同的unset命令,然后看到代理被重置:
$ unset $HTTP_PROXY $ echo $HTTP_PROXY
$请建议如何使用Python代码重置系统代理
发布于 2018-02-19 17:37:03
你不能这么做。环境变量从您的父shell (运行程序的那个shell)开始。父shell创建一个新进程(用于运行Python代码),并将环境变量复制到该进程。每个os.system()都创建一个新进程,并将环境变量复制到它。然后,os.system()创建进程退出,其环境消失。
子进程不能更改父进程的环境。
https://askubuntu.com/questions/1007749
复制相似问题