Skriptet ditt inneheld den rette export https_proxy=...-linja. Du køyrer det, og neste kommando ser framleis den gamle proxyen. Skriptet kan ha fungert perfekt inne i sin eigen prosess.

Køyring av eit skript startar eit eige skal. Det kan senda variablar vidare til kommandoane det startar, men det kan ikkje erstatta miljøet til overordna terminalskal etter at det er ferdig.

./set-proxy.sh
. ./set-proxy.sh

Dette er ulike operasjonar. Den andre brukar dot-innbygde kommandoen i skalet for å lesa fila i det gjeldande skalet. Bash kallar det òg source; sjå referansen for innbygde kommandoar.

Gjer source berre på ei fil du stolar på, fordi alle skalkommandoane i henne køyrer i nettopp den gjeldande konteksten. Trengst proxyen berre for kommandoar inne i skriptet, er vanleg køyring den rette grensa. For éin einskild ekstern kommando unngår ein kommandobunden proxy-tildeling å endra det gjeldande skalet.

Hald variabeltildelingar bokstavelege. Backticks tyder kommandoerstatning, ikkje sitering. Ei linje som tildeler ein proxy, bør ikkje ved eit uhell prøva å køyra URL-en sin. For verdiar som skal velja eit offentleg endepunkt, gjev lista over gratis proxyar kandidatar der protokollen må passa til klienten. Til slutt, kontroller variabelnamna som den faktiske nettverksklienten les; å retta omfanget til skalet gjer ikkje ein ustøtta variabel effektiv.

Relaterte artiklar