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

הִיסטוֹרִיָה

הגרסה הראשונה של Zsh נוצר בשנת 1990 על ידי תלמיד פרינסטון בשם פול Falstad. השם "Zsh" לכאורה מגיע מזהה הקשר של פרופסור פרינסטון Zhong Shao. הקונכייה עצמה הושפעה מבש, ק"ש ו - Tcsh: ל Zsh יש פונקציית השלמה אוטומטית חזקה מאוד, יחד עם חיפושים רקורסיביים וכלל מתקן. וכמובן, ניתן להגדיר את הפקודה בהתאם לרצון המשתמש. עם זאת, יש לשקול את Zsh כמו Bourne Shell המורחבת.

הַתקָנָה

עכשיו שאתה יודע יותר על Zsh, בואו להתקין את זה. עבור אובונטו, ההתקנה פשוטה למדי:

 sudo apt-get להתקין zsh 

עבור הפצות אחרות, זה צריך להיות זמין גם במאגרים שלך. במקרה הגרוע ביותר, הורד את החבילה מהדף הרשמי.

לאחר החבילה מותקן, אתה יכול להפעיל Zsh Shell מכל מסוף באמצעות הפקודה:

 zsh 

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

 sudo usermod -s / bin / zsh [שם משתמש] 

שים לב שכרגיל, קובץ התצורה נמצא ב "~ / .zshrc" וייווצר בהפעלה הראשונה. כמו באש, זה יכול לשמש כדי להוסיף כינויים ולהתאים אישית את הפקודה.

נוֹהָג

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

 rm - [מפתח טאבים] 

ולאחר מכן השתמש במקש הטאבים. פעולה זו תציג את כל הארגומנטים האפשריים עבור הפקודה "rm". כפי שאתם יכולים לראות, השלמת אוטומטי הוא מדהים עם Zsh.

לא רק טיעונים של הפקודה, אלא גם את המארחים ssh מציג ב / etc / hosts, מטרות אפשריות עבור הפקודה "לעשות", את דפי המדריך, את הקבצים בשרת מרוחק, וכו ', כל יכול להיות אוטומטי הושלמה על ידי Zsh. וגם את מהירות השלמה אוטומטית הוא גם מרשים.

תוכל גם לנסות להקליד פקודה שגויה

 gzit. zshrc 

והיא תפעיל את התכונה תיקון:

אם התיקון לא עובד בהתחלה, זה אומר שאתה לא להפעיל אותו עדיין. לשם כך, פשוט הקלד:

 לתקן נכונה 

התיקון אינו האפשרות היחידה שניתן להפעיל. לאחר הפקודה "setopt", אתה יכול גם להשתמש

  • צפצוף : להשמיע צליל ביפ כאשר מתרחשת שגיאה
  • hist_ignore_all_dups : כדי למנוע את אותה הפקודה מלהירשם פעמיים בהיסטוריה
  • auto_cd : כדי לעבור לספרייה רק ​​על ידי הקלדת שמו (אין צורך בפקודה cd יותר)

להיפך, אם אתה רוצה למחוק אפשרות, התחביר הוא:

 unsetopt [אפשרות] 

עוד שימוש טוב של Zsh הוא החיפוש רקורסיבית. השתמשת עם באש למפעיל "*" כלומר "הכל". עכשיו עם Zsh, "**" ניתן לתרגם "הכל בתוך כל". במילים אחרות, חיפוש רקורסיבי. תן לי להמחיש עם דוגמה. אם אתה רוצה למחוק קובץ בשם "foobar" אבל אתה לא זוכר איפה זה, הקו הזה יהיה שימושי:

 rm ** / foobar 

Zsh יחפש את הקובץ foobar בתוך הספרייה הנוכחית, ובכל ספרייה משנה, עד שהוא מסיר את זה.

מפעיל רקורסיבי יכול להיות שימושי באמת בעת חיפוש סוג מסוים של קובץ. ניתן להשתמש בשילוב של הפקודה "ls" ו regex. פקודה פשוטה כמו

 ** / * 

יחזיר את כל קבצי MP3 כי Zsh יכול למצוא רקורסיבית מהספרייה הנוכחית.

לבסוף, בואו לדבר קצת על תצורה של Zsh. כפי שאתה יודע, זה קורה ב ~ / .zshrc. אם אתה רוצה לנסות כמה הנחיות מותאמות אישית, Zsh מגיע עם כמה נושאים שנשמרו. כדי לראות איזה מהם זמין, טען את מערכת ההנחיה

 מופעל אוטומטית 

ולאחר מכן רשימת הנושאים עם:

 הפקודה -L 

וכדי לשנות את ההנחיה הנוכחית, הקלד

 הפקודה [שם הנושא] 

אם יש לך ליצור הרבה כינויים באש, הם לא יעבדו ב zsh. אתה צריך להעביר אותם מעל ה ~ / .zsh קובץ. התחביר הבסיסי זהה לזה של Bash:

 כינוי [alias 'name] = "[הפקודה]" 

בנוסף, ניתן גם להגדיר כינוי ספציפי עבור סיומת הקובץ. זה מאפשר לך להפעיל באופן אוטומטי את הפקודה המתאימה עבור הקובץ הרצוי. לדוגמה, אני משתמש בתוכנית "mpg123" כדי לנגן MP3 של שורת הפקודה. לכן, אני יכול להוסיף שלי. Zshrc:

 כינוי-s mp3 = "mpg123" 

משם, בכל פעם שאני כותב משהו כמו

 ./wsong.mp3 

Mpg123 יושק וישחק את השיר. עם קצת דמיון, אנחנו יכולים לשלב את הפונקציונליות הזאת עם המאמר הקודם שלי על להתמודד עם ארכיונים משורת הפקודה:

 כינוי-זפת = "tar-xvf" כינוי = rar = "unrar x" כינוי-s zip = "unzip" כינוי-pdf = "evince" 

סיכום

כן, Zsh ו- Bash דומים מאוד, אבל zsh הוא גמיש יותר שהופך אותו לפופולרי יותר. אישית, אני באמת מעריך את התכונה השלמת אוטומטי ואת הכינוי עבור סיומת הקובץ. הטיפים שהוזכרו לעיל מכסים רק חלק קטן ממה ש- zsh יכול לעשות. כדי למצוא מידע נוסף על Zsh, אני מזמין אתכם לקרוא את ויקיציטוט של Archlinux.

מה דעתך על ה- Zsh Shell? ניסית עוד אחת? האם יש לך שאלה כלשהי לגבי הפגזים בכלל? אנא יידע אותנו בתגובות.