Koristite drugi proxy za jednu shell naredbu
Stavite proxy varijable prije naredbe kada želite privremenu rutu bez mijenjanja nadređenog shell-a ili uređivanja datoteka za pokretanje.
Želite da jedno preuzimanje koristi drugi proxy, a zatim da se sve vrati na uobičajeno. Nema potrebe uređivati datoteku za pokretanje shell-a i nadati se da ćete se sjetiti poništiti je.
Za vanjsku naredbu u shell-u tipa POSIX stavite dodjelu prije naredbe:
https_proxy=http://proxy.example:8080 curl https://example.com/
Koristite HTTP odredište namijenjeno tom preuzimanju; popis HTTP proxyja nudi kandidate za dopuštene javne rute. Dodjela se predaje okruženju te naredbe. Njezini podređeni procesi mogu naslijediti vrijednost, ali dodjela ne zamjenjuje postojeću vrijednost nadređenog shell-a nakon što naredba završi.
Klijent i dalje odlučuje što će čitati
Sintaksa shell-a stvara okruženje; ona ne nameće mrežnu rutu. Koristite nazive varijabli koje aplikacija podržava. Postojeće varijable zaobilaženja, izričite opcije naredbe ili vlastita konfiguracija aplikacije još uvijek mogu utjecati na rezultat.
Dokumentacija o okruženju Bash-a objašnjava ponašanje prefiksa naredbe. Naredbe koje su shell funkcije, posebne ugrađene naredbe ili sintaksa shell-a mogu imati dodatna pravila dosega, pa gornji jednostavni primjer namjerno koristi vanjski program.
Za nekoliko naredbi koristite podshell
(
export http_proxy=http://proxy.example:8080
export https_proxy=http://proxy.example:8080
command-one
command-two
)
Skupina u zagradama radi s vlastitim shell okruženjem. Zamijenite ilustrativne nazive naredbi programima koje namjeravate pokrenuti. Ovaj obrazac izbjegava krhki slijed spremanja stare vrijednosti, njezina prepisivanja i ručnog vraćanja nakon svakog mogućeg neuspjeha.
Držite tajne podalje od primjera koji se kopiraju u povijest shell-a. Također zapamtite da sudo može filtrirati okruženje; varijabla vidljiva vanjskoj naredbi ne prenosi se automatski kroz svaku granicu privilegija. Privremeni doseg i stvarni odabir proxyja ostaju odvojena pitanja.