ניקוי משתני ה-proxy של Bash ו-Zsh באמצעות פונקציית unproxy
תיקון עזר shell שמסיר רק all_proxy לאחר הפעלת משתנים ייעודיים לפרוטוקול ו-ALL_PROXY באותיות גדולות.
לעזר ה-shell הזה יש מתג כיבוי לא שלם:
export http_proxy=http://127.0.0.1:1087
export https_proxy=http://127.0.0.1:1087
export ALL_PROXY=socks5://127.0.0.1:1080
alias unproxy='unset all_proxy'
ב-shell של Unix, all_proxy ו-ALL_PROXY הם שמות שונים. הכינוי אינו מסיר אף אחד משלושת המשתנים שלמעלה. הסרה של ALL_PROXY באותיות גדולות בלבד תשאיר את שתי ההגדרות הייעודיות לפרוטוקול.
כדי לנקות את השמות הנפוצים האלה מהסשן הנוכחי של Bash או Zsh:
unproxy() {
unset http_proxy https_proxy all_proxy
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY
}
קרא לפונקציה ב-shell שהפקודות הבאות שלו אמורות לרשת את הסביבה הנקייה. סקריפט בן אינו יכול לנקות את הסביבה של הטרמינל האב שלו.
יישומים שכבר פועלים שומרים על המצב שלהם. קובץ תצורה של curl, הגדרת Git, העדפת דפדפן או אפשרות פקודה מפורשת יכולים גם לבחור proxy לאחר הסרת המשתנים. אם התעבורה עדיין משתמשת בו, בדוק את התצורה של אותו לקוח.