At køre proxy-on.sh omkonfigurerer ikke parent-shellet
Vælg en shell-funktion eller en indlæst fil, når en proxy-hjælper skal ændre det aktuelle shells miljø.
Scriptet eksporterer http_proxy, udskriver “enabled” og afslutter. Curl startet bagefter fra den oprindelige terminal har stadig sit gamle miljø.
Kørsel af scriptet oprettede en underordnet proces. Export gør en værdi tilgængelig for den proces' børn; det sender ikke værdien tilbage til parent-shellet. At sætte export inde i bash -c eller backticks vender ikke forholdet om.
Til en interaktiv kontakt kan en funktion defineret i det aktuelle shell udføre det tilsigtede arbejde:
proxy_on() {
export http_proxy=http://proxy.example.net:8080
export https_proxy="$http_proxy"
}
Erstat eksempel-endpointet med din HTTP-tjeneste eller en kandidat fra HTTP-proxy-listen til tilladte offentlige forespørgsler. Kald funktionen efter indlæsning af dens definition. En indlæst shell-fil er en anden måde at køre tildelinger i det aktuelle shell i stedet for et nyt.
Eksisterende GUI-programmer og andre terminaler beholder stadig deres egne miljøer. Hvis hjælperen kun skal starte én proxied kommando, er det ofte præcis den rigtige ramme at holde ændringen i den kommandos miljø.