GNU/Linux >> Znalost Linux >  >> Linux

Linux – Jak zrušit nastavení proměnné prostředí „http_proxy“ v Pythonu?

Níže uvedený kód pythonu používám k resetování proměnné prostředí http_proxy v Linuxu CentOS 6, ale neruší nastavení proměnné pro zbytek skriptu Python.

Kód:

 import os 
 print "Unsetting http..." 
 os.system("unset http_proxy") 
 os.system("echo $http_proxy") 
 print "http is reset"

Výstup:

Unsetting http...
http://web-proxy.xxxx.xxxxxxx.net:8080
http is reset
Process finished with exit code 0

Přijatá odpověď:

Každé vyvolání os.system() běží ve svém vlastním subshell, s vlastním čerstvým prostředím:

>>> import os
>>> os.system("echo $$")
97678
0
>>> os.system("echo $$")
97679
0

jste zrušení nastavení http_proxy proměnná, ale potom vaše podskořápka dokončila provádění příkazu (to wit:unset ), a končí. Poté spustíte nový subshell s novým prostředím, ve kterém spustíte echo .

Věřím, že to, o co se snažíte, je del os.environ['http_proxy'] nebo os.environ.pop('http_proxy') pokud se chcete ujistit, že neexistuje http_proxy proměnná prostředí bez ohledu na to, zda dříve existovala:

$ export foo=bar
$ python2
Python 2.7.10 (default, Jul 15 2017, 17:16:57)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.environ['foo']
'bar'
>>> del os.environ['foo']
>>> os.system('echo $foo')

0

Linux
  1. Jak nainstalovat Python na Linux

  2. Jak nastavit a zrušit místní, uživatelské a systémové proměnné prostředí v Linuxu

  3. Proměnné prostředí Linux:Jak číst a nastavovat na Linux VPS

  1. Jak zkontrolovat verzi OS a Linuxu

  2. Jak změnit identitu systému Linux

  3. Jak změnit proměnnou PATH v Linuxu

  1. Jak nastavit proměnnou prostředí pro všechny v mém linuxovém systému?

  2. Jak zkontroluji operační systém v Pythonu?

  3. Jak změnit jazyk mého git?