Rularea proxy-on.sh nu reconfigurează shell-ul părinte
Alegeți o funcție de shell sau un fișier încărcat atunci când un ajutor proxy trebuie să modifice mediul shell-ului curent.
Scriptul exportă http_proxy, afișează “enabled” și iese. Curl pornit după aceea din terminalul original are în continuare mediul său vechi.
Rularea scriptului a creat un proces copil. Export face o valoare disponibilă copiilor acelui proces; nu trimite valoarea înapoi în shell-ul părinte. Plasarea exportului în bash -c sau între accente grave nu inversează această relație.
Pentru un comutator interactiv, o funcție definită în shell-ul curent poate face munca dorită:
proxy_on() {
export http_proxy=http://proxy.example.net:8080
export https_proxy="$http_proxy"
}
Înlocuiți endpointul din exemplu cu serviciul dvs. HTTP sau cu un candidat din lista de proxy HTTP pentru cereri publice permise. Apelați funcția după încărcarea definiției ei. Un fișier de shell încărcat este o altă cale de a rula atribuiri în shell-ul curent în locul unuia nou.
Aplicațiile GUI existente și alte terminale își păstrează în continuare propriile medii. Dacă ajutorul este destinat să lanseze o singură comandă prin proxy, păstrarea modificării în mediul acelei comenzi este adesea exact domeniul potrivit.