ב-Fish, אבחון זה עשוי להדפיס רק שורה חדשה:

echo HTTPS_PROXY=$HTTPS_PROXY

משתני Fish מכילים רשימות. כאשר משתנה ללא מרכאות מוצמד לטקסט, Fish מחבר את הטקסט הזה לכל איבר ברשימה. משתנה לא מוגדר, או משתנה שהוגדר בלי שום איבר, אינו יוצר שום צירוף. הארגומנט כולו נעלם, כולל HTTPS_PROXY=.

שמרו על התווית על ידי הצגת ההרחבה במרכאות:

printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"

כך מתקבל ארגומנט אחד גם כאשר אין למשתנה איברים, ולכן התווית נשארת גלויה. מרכאות סביב משתנה בעל איברים מרובים מחברות את איבריו ברווחים; הן אינן מוכיחות שהמשתנה מכיל כתובת URL אחת שמישה לפרוקסי.

כדי לבדוק אם המשתנה קיים, השתמשו בפעולת השאילתה של Fish:

if set --query HTTPS_PROXY
    printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
else
    echo 'HTTPS_PROXY is not defined'
end

שאילתה מוצלחת פירושה שהמשתנה מוגדר, אך לא בהכרח שיש בו ערך לא ריק או שלקוח ישתמש בו. ייצוא וגילוי פרוקסי ייחודי ללקוח הם בדיקות נפרדות.

מאמרים קשורים