Miért nem változtatja meg a set-proxy.sh futtatása a terminált
Egy lefuttatott szkript nem tud változókat visszaexportálni a szülő héjba. Ha az aktuális héjnak meg kell tartania a beállításokat, töltsön be egy megbízható konfigurációs fájlt source-szal.
A szkriptjében ott van a helyes export https_proxy=... sor. Lefuttatja, és a következő parancs még mindig a régi proxyt látja. Lehet, hogy a szkript a saját folyamatán belül hibátlanul működött.
Egy szkript futtatása külön héjat indít. Tud változókat átadni az általa indított parancsoknak, de kilépése után nem tudja lecserélni a szülő terminálhéj környezetét.
./set-proxy.sh
. ./set-proxy.sh
Ezek különböző műveletek. A második a héj dot beépített parancsával olvassa be a fájlt az aktuális héjban. A Bash ezt source néven is ismeri; lásd a beépített parancsok referenciáját.
Csak olyan fájlt töltsön be source-szal, amelyben megbízik, mert minden héjparancsa ebben az aktuális környezetben fut. Ha a proxyra csak a szkripten belüli parancsokhoz van szükség, a szokásos futtatás a helyes határ. Egyetlen külső parancshoz a parancshoz kötött proxy-hozzárendelés elkerüli az aktuális héj módosítását.
Tartsa a változó-hozzárendeléseket szó szerintieknek. A backtick parancshelyettesítést jelent, nem idézést. Egy proxyt hozzárendelő sornak nem szabad véletlenül megpróbálnia futtatni az URL-jét. A nyilvános végpont kiválasztására szánt értékekhez az ingyenes proxyk listája olyan jelölteket kínál, amelyek protokolljának meg kell egyeznie a klienssel. Végül ellenőrizze azokat a változóneveket, amelyeket a tényleges hálózati kliens olvas; a héj hatókörének javítása nem tesz működőképessé egy nem támogatott változót.