Att köra proxy-on.sh konfigurerar inte om föräldraskalet
Välj en skalfunktion eller en inläst fil när en proxy-hjälpare ska ändra det aktuella skalets miljö.
Skriptet exporterar http_proxy, skriver ut “enabled” och avslutar. Curl som startas efteråt från den ursprungliga terminalen har fortfarande sin gamla miljö.
Körningen av skriptet skapade en barnprocess. Export gör ett värde tillgängligt för den processens barn; det skickar inte tillbaka värdet till föräldraskalet. Att sätta export inuti bash -c eller backticks vänder inte på det förhållandet.
För en interaktiv växel kan en funktion som definieras i det aktuella skalet göra det avsedda arbetet:
proxy_on() {
export http_proxy=http://proxy.example.net:8080
export https_proxy="$http_proxy"
}
Byt ut exemplets endpoint mot din HTTP-tjänst, eller mot en kandidat från HTTP-proxylistan för tillåtna offentliga förfrågningar. Anropa funktionen efter att dess definition har lästs in. En inläst skalfil är ett annat sätt att köra tilldelningar i det aktuella skalet i stället för ett nytt.
Befintliga GUI-program och andra terminaler behåller fortfarande sina egna miljöer. Om hjälparen bara ska starta ett enda proxat kommando är det ofta precis rätt omfattning att hålla ändringen i det kommandots miljö.