Eit Rake-skal kan ikkje fjerna proxyen til Ruby
Endre ENV til Ruby for seinare oppgåver, eller gje eit eige miljø-hash for barneprosessen i staden for å fjerna ein proxy inne i eit isolert sh-kall.
sh 'unset http_proxy' endrar skalet som vert starta for det kallet. Når det er ferdig, har Ruby-prosessen i Rake framleis sitt opphavlege miljø, og eit seinare sh-kall arvar det igjen.
For å endra Ruby-prosessen for vidare arbeid:
ENV.delete('http_proxy')
ENV.delete('HTTP_PROXY')
Det påverkar seinare barn og Ruby-kode som les desse nøklane. Det omkonfigurerer ikkje terminalen som opphavleg starta Rake.
For éin underordna kommando gir du miljøet hans direkte:
sh(
{ 'http_proxy' => nil, 'HTTP_PROXY' => nil },
'ruby', 'download.rb'
)
Grensesnittet til Ruby for prosessstart handsamar nil-verdiar som fjerningar frå miljøet til det barnet. Rake sender argumentlista til dette grensesnittet og lèt sin eigen ENV vera uendra.
Fjern nøklane som er relevante for den faktiske klienten. Ein HTTPS-operasjon kan òg bruka https_proxy, og nokre klientar les ALL_PROXY eller ei anna konfigurasjonsfil. Å fjerna berre éin HTTP-nøkkel er ikkje ei universell rettleiing om direkte rute.
Forma med fleire argument held køyrbare argument skilde. Det er ikkje naudsynt å byggja ein shell-streng som inneheld ein fjerningskommando og ein URL.