Изпълнението на proxy-on.sh няма да преконфигурира родителската обвивка
Изберете функция на обвивката или зареден файл, когато помощник за прокси трябва да промени средата на текущата обвивка.
Скриптът експортира http_proxy, отпечатва “enabled” и излиза. Curl, стартиран след това от оригиналния терминал, все още има старата си среда.
Изпълнението на скрипта създаде дъщерен процес. Export прави стойността достъпна за децата на този процес; той не изпраща стойността обратно в родителската обвивка. Поставянето на export вътре в bash -c или в бектици не обръща тази връзка.
За интерактивен превключвател функция, дефинирана в текущата обвивка, може да свърши желаната работа:
proxy_on() {
export http_proxy=http://proxy.example.net:8080
export https_proxy="$http_proxy"
}
Заменете примерния endpoint с вашата HTTP услуга или с кандидат от списъка с HTTP проксита за разрешени публични заявки. Извикайте функцията след зареждане на дефиницията ѝ. Зареден файл на обвивката е друг начин да изпълнявате присвоявания в текущата обвивка, а не в нова.
Съществуващите GUI приложения и други терминали все още пазят собствените си среди. Ако помощникът е предназначен да стартира само една команда през прокси, задържането на промяната в средата на тази команда често е точно правилният обхват.