Fish Shell:
שימוש במנפה שגיאות

איך לעשות זאת:

ל-Fish אין מנפה שגיאות מובנה כמו שקיים בשרלים אחרים, אך ניתן להשתמש בכלים חיצוניים כמו gdb לניפוי שגיאות של תכניות מקומפלות או fish -d להרצת fish עם פלט ניפוי ברמות שונות. בואו נתקדם עם fish -d:

# הרצת קליפת fish עם רמת ניפוי 2
fish -d2

# בקליפת ה-fish, בואו נבדוק פונקציה פשוטה עם באג פוטנציאלי
function test_func
    set val 42
    echo "הערך הוא $val"
    if test $val -eq 42
        echo "הכל בסדר."
    else
        echo "משהו פה לא נכון."
    end
end

# קריאה לפונקציה וצפייה בפלט הניפוי
test_func

הייתם רואים פלט ניפוי נוסף לפני ואחרי הרצת הפונקציה, מה שעוזר לכם לאתר בעיות.

צלילה עמוקה

מסורתית, ניפוי שגיאות בסביבות דמויות Unix התבצע באמצעות כלים מתמחים כמו gdb ל-C/C++ או pdb ל-Python. ב-Fish, בדרך כלל תלויים בכלים חיצוניים או בתכונות מובנות כמו functions -v לפלט מורחב של פונקציות ו-set -x לעקוב אחרי שינויים במשתנים.

חלק מהאנשים בוחרים בשרלים אלטרנטיביים כמו Bash בגלל תכונות כמו set -x לניפוי סקריפטים. עם זאת, ל-Fish יש את הקסם שלו עם דגש על ידידותיות למשתמש ואינטראקטיביות, שיכולה להפחית את הצורך בניפוי קשה במקרים רבים.

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

ראו גם

הנה כמה עוגני תקווה בזמן שאתם טובעים בקוד: