שימוש ב-zsh כמעטפת ברירת המחדל ב-Mac

החל מ-macOS Catalina, ה-Mac משתמש ב-zsh כמעטפת ההתחברות וכמעטפת אינטראקטיבית המהוות ברירת מחדל. ניתן להפוך את zsh לברירת המחדל גם בגרסאות קודמות של macOS.

כברירת מחדל, ה-Mac משתמש ב-zsh או ב-bash כמפרש של שורת הפקודה עבור מעטפת ההתחברות והמעטפת האינטראקטיבית:

  • zsh (מעטפת Z) היא מעטפת ברירת המחדל עבור כל חשבונות המשתמשים החדשים שנוצרו, החל מ-macOS Catalina.

  • bash היא מעטפת ברירת המחדל ב-macOS Mojave וגרסאות קודמות.

zsh תואמת מאוד למעטפת Bourne‏ (sh) ותואמת בעיקר ל-bash, עם כמה הבדלים. למידע נוסף על zsh ועל מערכת ההשלמה המקיפה שלה בשורת הפקודה, הזינו man zsh ביישום 'מסוף'.

כיצד לשנות את מעטפת ברירת המחדל

לא משנה אם חשבון המשתמש שלכם מוגדר לשימוש ב-zsh (מומלץ), ב-bash או במעטפת אחרת, ניתן לשנות את מעטפת ברירת המחדל משורת הפקודה או בהגדרות 'משתמשים וקבוצות'.

מתוך שורת הפקודה

ביישום 'מסוף', הזינו $ chsh -s path, כאשר נתיב הוא אחד מנתיבי המעטפת המפורטים ב-/etc/shells, כגון /bin/zsh‏, /bin/bash‏, /bin/csh‏, /bin/dash‏, /bin/ksh‏, /bin/sh או /bin/tcsh.

בהגדרות 'משתמשים וקבוצות'

ב-macOS Ventura ואילך:

  1. בחרו בתפריט Apple  > 'הגדרות המערכת', ואחר כך הקליקו על 'משתמשים וקבוצות' בסרגל הצד.

  2. לחצו על שם המשתמש או על תמונת המשתמש שלכם ברשימת המשתמשים בצד שמאל תוך לחיצה על מקש Control ובחרו 'אפשרויות מתקדמות'.

  3. כשתתבקשו לעשות זאת, הזינו את שם המשתמש והסיסמה שלכם.

  4. בחרו מעטפת בתפריט 'מעטפת', ולאחר מכן לחצו על 'אישור' כדי לשמור את השינויים.

בגרסאות קודמות של macOS:

  1. בחרו בתפריט Apple‏  > 'העדפות המערכת', ולאחר מכן לחצו על 'משתמשים וקבוצות'.

  2. הקליקו על הקובץ lockNo alt supplied for Image, ולאחר מכן הזינו את שם המשתמש והסיסמה.

  3. לחצו על שם המשתמש שלכם ברשימת המשתמשים מצד ימין תוך לחיצה על מקש Control, ולאחר מכן בחרו ב'אפשרויות מתקדמות'.

  4. בחרו מעטפת בתפריט 'מעטפת', ולאחר מכן לחצו על 'אישור' כדי לשמור את השינויים.

כיצד להשתמש במעטפת אחרת בלי לשנות את ברירת המחדל

אם אינכם רוצים שהיישום 'מסוף' ישתמש במעטפת ההתחברות המהווה ברירת מחדל בחלונות חדשים ובכרטיסיות חדשות של 'מסוף':

  1. פתחו את היישום 'מסוף' ובחרו 'הגדרות' > 'מסוף' (או 'העדפות').

  2. בחלונית 'כללי', בחרו באפשרות 'פקודה (נתיב מלא)'.

  3. בשדה הסמוך, הזינו אחד מנתיבי המעטפת שמופיעים ב-‎/etc/shells, למשל ‎/bin/zsh,‏ ‎/bin/bash,‏ ‎/bin/csh,‏ ‎/bin/dash,‏ ‎/bin/ksh,‏ ‎/bin/sh או ‎/bin/tcsh.

אם אתם מפעילים את מעטפת bash בזמן ש-macOS מוגדרת לשימוש במעטפת אחרת, תופיע הודעה שלפיה המעטפת האינטראקטיבית המהווה ברירת מחדל היא כעת zsh. כדי להשתיק אזהרה זו, ניתן להוסיף את הפקודה הבאה ל-‎~/.bash_profile או ל-‎~/.profile:

export BASH_SILENCE_DEPRECATION_WARNING=1

כיצד לעבור לפרופיל ושורת פקודה של zsh

אם אתם משתמשים בפרופיל bash, למשל כדי להגדיר משתנים, כינויים או משתני נתיבים של הסביבה, עליכם לעבור לשימוש בשווה ערך ל-zsh. לדוגמה:

  • ‎.zprofile שווה ערך ל- ‎.bash_profile ופועל בעת ההתחברות, כולל מעל SSH

  • ‎.zshrc שווה ערך ל-‎.bashrc ופועל בכל הפעלה חדשה של היישום 'מסוף'

אם אתם משתמשים ב-‎.profile (פרופיל תואם POSIX), תוכלו לגרום ל-zsh לקרוא באופן אוטומטי את ההגדרות שלו באמצעות הוספת פקודה זו ל-‎.zprofile:

[[ -e ~/.profile ]] && emulate sh -c 'source ~/.profile'

אתם יכולים גם להעביר חלק מההגדרות מפרופיל bash לפרופיל zsh ללא שינויים. לדוגמה, על מנת להגדיר משתני סביבה: export MY_SETTING=1.

zsh מזהה קבוצה של מצייני שורת פקודה השונים מאלה של bash, ויש לה תחביר נקי יותר לציון פלט בצבע, וכך נמנע הצורך להשתמש ברצפי ANSI escape. לדוגמה, הנה תחביר עבור שורת פקודה של bash המהווה ברירת מחדל מ-‎.bash_profile:

export PS1="\[\e[92;40m\]\h\[\e[m\]:\[\e[93m\]\W\[\e[m\] \\$ "

כדי להמיר בקשת bash זו לבקשת zsh בעת שימוש ב-‎.zprofile או ‎.zshrc:

export PS1="%10F%m%f:%11F%1~%f \$ "

עיינו ב-man page של zsh לקבלת פרטים נוספים.

כיצד לבדוק את קבצי ה-Script של המעטפת

כדי לבדוק תאימות של קובצי Script לרכיבי מעטפת שתואמים ל-Bourne ב-macOS Catalina ואילך, אתם יכולים לשנות את ‎/var/select/sh ל-‎/bin/bash, ל-‎/bin/dash או ל-‎/bin/zsh. אם אתם משנים את ‎/var/select/sh למעטפת שאינה bash, חשוב לדעת כי ייתכן שקובצי Script שמשתמשים בביטויי bash לא יפעלו כראוי.

ניתן לגרום ל-zsh לחקות את sh על ידי הפעלת הפקודה zsh --emulate sh.

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

Published Date: