sh 'unset http_proxy' د هغې غوښتنې لپاره پیل شوې shell بدلوي. کله چې دا ووځي، د Rake Ruby بهیر لا هم خپل اصلي environment لري، او وروسته sh غوښتنه یې بیا میراث کوي.

د راتلونکي کار لپاره د Ruby بهیر بدلولو لپاره:

ENV.delete('http_proxy')
ENV.delete('HTTP_PROXY')

دا وروستیو ماشومانو او هغو keys لوستونکي Ruby کوډ اغیزه کوي. دا هغه ټرمینل بیا نه ترتیبوي چې Rake یې په اصل کې پیل کړی و.

د یوې ماشوم فرمان لپاره، environment یې مستقیم ورکړئ:

sh(
  { 'http_proxy' => nil, 'HTTP_PROXY' => nil },
  'ruby', 'download.rb'
)

د Ruby د بهیر د پیل انټرفیس nil ارزښتونه د هغه ماشوم له environment څخه د لرې کولو په توګه ګڼي. Rake د argument لیست هغه انټرفیس ته سپاري، خپل ENV بدلون پرته پریږدي.

د اصلي client لپاره اړوند keys لرې کړئ. د HTTPS عملیات کېدای شي https_proxy هم وکاروي، او ځینې client ALL_PROXY یا بل configuration فایل ګوري. یوازې یو HTTP key لرې کول د مستقیم مسیر نړیوال لارښود نه دی.

د څو argument بڼه د اجرا وړ فایل arguments جلا ساتي. د لرې کولو فرمان او URL لرونکې shell تار جوړولو ته اړتیا نشته.

اړوندې مقالې