የ Python ፕሮግራም ለአንድ የልጅ ትዕዛዝ የራሱን የፕሮክሲ አካባቢ መስጠት ይችላል። የተወረሱትን እሴቶች ይቅዱ፣ ቅጂውን ይቀይሩ እና ለ subprocess.run ያስተላልፉ፦

import os
import subprocess

child_env = os.environ.copy()
child_env["https_proxy"] = "http://proxy.example:8080"
subprocess.run(
    ["curl", "--head", "https://www.example.com/"],
    env=child_env,
    check=True,
    timeout=30,
)

ምሳሌው curl አስቀድሞ ይገኛል ብሎ ያስባል። የእሱ HTTPS ጥያቄ የሚያስፈልገውን ዋሻ የሚደግፍ HTTP ፕሮክሲ መጠቀም ይችላል። የፕሮክሲ መረጃ ሳይዘጋጅ ለዚህ የህዝብ ጣቢያ ፍተሻ፣ ከ HTTP ፕሮክሲ ዝርዝር የተወሰደ እጩ የምሳሌውን መጨረሻ ሊተካ ይችላል። ልጁ አሁንም የተቀዳውን አካባቢ ቀሪ ክፍል ይቀበላል፣ ተገቢ የሆኑ የማለፍ ቅንብሮችን ጨምሮ።

env ማስተላለፍ ለዚህ ጥሪ ያንን አካባቢ ይሰጣል። ቅጂው os.environ ን በ Python ሂደት ውስጥ ለሌሎች ስራዎች ከመቀየር ያቆያል።

በቀጥታ ወደ os.environ መመደብም ትርጉም አለው፦ የ Python ሂደት አካባቢን ያሻሽላል እና በኋላ የሚጀመሩ ልጆችን ሊነካ ይችላል። Python ን የጀመረውን shell አያሻሽልም፣ ተዛማጅ ያልሆነ መተግበሪያንም ሆነ አስቀድሞ የሚሰራ ልጅንም።

ዓላማው በመስተጋብር shell ውስጥ የወደፊት ትዕዛዞችን መቀየር ከሆነ፣ ለውጡን በ shell ውስጥ ያድርጉ። አንድ የተጀመረ መሳሪያ ብቻ ሌላ መንገድ ከፈለገ፣ አካባቢውን እንደተመለከተው ከ subprocess ጥሪ አጠገብ ያቆዩ።

ተዛማጅ ጽሑፎች