NAME
sh - הפקודה מתורגמן (פגז)
סינופסיס
sh -/ + aCefnuvxIimqsVEbc -o שם ארוך -מילים המטרה …
תיאור
ש 'הוא מתרגם הפקודה הרגיל עבור המערכת. הגירסה הנוכחית שלsh הוא בתהליך של שינוי כדי להתאים אתPOSIX 1003.2 ו- 1003.2a מפרטים עבור הקליפה. גרסה זו יש תכונות רבות אשר הופכים אותו דומה במובנים מסוימים את הקונכייה קורן, אבל זה לא שיבוט פגז קורן (ראה ksh (1)). רק תכונות המיועדות על ידיPOSIX בתוספת כמה הרחבות ברקלי, משולבים לתוך פגז זה. אנחנו מצפיםPOSIX ההתאמה עד לשחרור 4.4 BSD. דף זה האיש לא נועד להיות הדרכה או מפרט מלא של הקליפה.
סקירה כללית
הקליפה היא פקודה הקוראת שורות מקובץ או מסוף, מפרשת אותם, ובדרך כלל מבצעת פקודות אחרות. זוהי התוכנית שפועלת כאשר משתמש נכנס למערכת (אם כי המשתמש יכול לבחור פגז שונה עם הפקודה chsh (1)). פגז מיישמת שפה שיש לה בקרת זרימה בונה, מתקן מאקרו המספק מגוון רחב של תכונות בנוסף אחסון נתונים, יחד עם מובנית בהיסטוריה יכולות עריכת שורה. הוא כולל תכונות רבות כדי לסייע לשימוש אינטראקטיבי ויש לו את היתרון כי השפה הפרשנית נפוצה הן אינטראקטיבי ולא אינטראקטיבי להשתמש (סקריפטים פגז). כלומר, פקודות ניתן להקליד ישירות פגז פועל או ניתן להכניס לקובץ ואת הקובץ ניתן לבצע ישירות על ידי פגז.
הזמנה
אם לא קיימים טיעונים ואם הקלט הסטנדרטי של הקליפה מחובר למסוף (או אם -אניהדגל מוגדר), ואת -c האפשרות אינה קיימת, הקליפה נחשבת לקליפה אינטראקטיבית. פגז אינטראקטיבי בדרך כלל מתבקש לפני כל פקודה ומטפל בשגיאות תכנות ובטעויות שונות (כפי שמתואר בהמשך). כאשר הראשון מתחיל, הקליפה בודק את הטיעון 0, ואם זה מתחיל עם מקף `- 'פגז נחשב גם פגז כניסה. זה בדרך כלל נעשה באופן אוטומטי על ידי המערכת כאשר המשתמש הראשון יומני פנימה פגז הכניסה הראשון קורא פקודות מן הקבצים / etc / פרופיל ו .profile אם הם קיימים. אם משתנה הסביבהENV נקבע על כניסה לקליפה, או מוגדר בקובץ .prollile של פגז כניסה, הקליפה הבאה קוראת פקודות מקובץ בשםENVלכן, המשתמש צריך להציב פקודות שיש לבצע רק בזמן ההתחברות בקובץ .profile, ופקודות שמתבצעות עבור כל קליפה בתוךENV קובץ. כדי להגדיר אתENV משתנה לקובץ כלשהו, מקם את השורה הבאה בקובץ .profile של ספריית הבית שלך
ENV = $ HOME / .shinit; ייצוא ENV
מחליף את "shinit '' כל שם קובץ שתרצה. מאזENV הקובץ נקרא עבור כל הפניה של פגז, כולל סקריפטים פגז פגזים שאינם אינטראקטיביים, הפרדיגמה הבאה היא שימושית להגבלת פקודות בENV קובץ אינטראקציות אינטראקטיביות. פקודות מקום בתוך המקרה '' ו- '' esac '' להלן (פקודות אלה מתוארות בהמשך):
מארז - ב- * i *)
# פקודות לשימוש אינטראקטיבי בלבד
…
esac
אם צוינו טיעוני שורת הפקודה מלבד האפשרויות, אזי הקליפה מתייחסת לארגומנט הראשון כאל שם של קובץ שממנו ניתן לקרוא פקודות (script shell), והארגומנטים הנותרים מוגדרים כפרמטרים המיקום של הקליפה ($ 1 , $ 2, וכו '). אחרת, הקליפה קוראת פקודות מהקלט הסטנדרטי שלה.
עיבוד רשימת ארגומנטים
כל האפשרויות אות אחת יש שם המתאים שיכול לשמש כארגומנט ל -o אפשרות. הסט -o השם מסופק ליד האפשרות אות אחת בתיאור שלהלן. ציון מקף `` - '' 'הופך את האפשרות למצב מופעל, תוך שימוש בפלוס ``' 'משבית את האפשרות. ניתן להגדיר את האפשרויות הבאות משורת הפקודה או מהמערכת (1) המובנית (המתוארת בהמשך).
- א allexport
ייצא את כל המשתנים שהוקצו ל. (ללא הגבלה עבור 4.4alpha)
-ג
קרא פקודות משורת הפקודה. לא יקראו פקודות מהקלט הסטנדרטי.
-C noclobber
אל תחליף קבצים קיימים עם ''> '' (לא משויך ל- 4.4alpha)
-ה ארקסייט
אם לא אינטראקטיבי, צא מיד אם כל פקודה שלא נבדקה נכשלת. מצב היציאה של פקודה נחשב לבדיקה במפורש אם הפקודה משמשת לשליטהאם בינתיים אועד או אם הפקודה היא מפעיל יד שמאל של מפעיל `` & `או` `| ''.
-f noglob
השבת הרחבת שם נתיב.
-n noexec
אם לא אינטראקטיבי, לקרוא פקודות אבל לא לבצע אותם. זה שימושי לבדיקת התחביר של סקריפטים פגז.
-u nounset
כתוב הודעה לשגיאה רגילה בעת ניסיון להרחיב משתנה שאינו מוגדר, ואם הקליפה אינה אינטראקטיבית, צא מיד. (ללא הגבלה עבור 4.4alpha)
-v verbose
פגז כותב קלט שלה שגיאה תקן כפי שהוא נקרא. שימושי עבור באגים.
-איקס xtrace
כתוב כל פקודה לשגיאה סטנדרטית (קודמת על ידי + 'לפני שהיא מבוצעת.
-q שקט
אם -v או -איקס הוגדרו אופציות, לא להחיל אותן בעת קריאת קבצי אתחול, אלה / etc / profile .profile והקובץ שצוין על ידיENV משתנה הסביבה.
-אני התעלם
התעלם מ- EOF מהקלט כאשר הוא אינטראקטיבי.
-אני אינטראקטיבי
לאלץ את הקליפה להתנהג באופן אינטראקטיבי.
-M לפקח
הפעל את בקרת העבודה (הגדרה אוטומטית כאשר אינטראקטיבית).
- s סטדין
קרא פקודות מקלט רגיל (מוגדר באופן אוטומטי אם לא קיימים ארגומנטים בקובץ). לאפשרות זו אין השפעה כאשר היא מוגדרת לאחר שהקליפה כבר החלה לפעול (כלומר, קבוצה (1)).
-V vi
הפעל את מובנה vi (1) שורת הפקודה עורך (משבית -ה אם נקבע).
-E Emacs
הפעל את המובנה emacs (1) עורך שורת הפקודה (משבית -אשר אם נקבע).
-b להודיע
אפשר הודעה אסינכרונית על השלמת העבודה ברקע. (ללא הגבלה עבור 4.4alpha)
מבנה לקסיקאלי
הקונכייה קוראת קלט במונחים של שורות מקובץ ומנתקת אותו למילים במרחב הלבן (החסר והלשוניות), וברצפים מסוימים של תווים מיוחדים לקליפה הנקראת אופרטורים '' ישנם שני סוגים של אופרטורים: מפעילי בקרה ומפעילי ניתוב מחדש (משמעותם נדונה בהמשך). להלן רשימת המפעילים:
"מפעילי בקרה:"
& && ( ) ; ;; | || "מפעיל ניתוב מחדש:" < > >| << >> <& >& <<- <>
ציטוט משמש להסרת המשמעות המיוחדת של תווים או מילים מסוימים לקליפה, כגון אופרטורים, רווח לבן או מילות מפתח. קיימים שלושה סוגים של ציטוט: ציטוטים בודדים תואמים, ציטוטים כפולים תואמים ו- Backslash. קו נטוי הפוך משמר את המשמעות המילולית של הדמות הבאה, למעט קוד חדש. קו נטוי הפוך על רקע קו חדש של אק, מטופל כהמשך קו. צירוף תווים במרכאות בודדות משמר את המשמעות המילולית של כל התווים (למעט ציטוטים בודדים, מה שהופך אותו בלתי אפשרי לשים ציטוטים בודדים במחרוזת אחת שצוטטה). צירוף תווים בתוך מרכאות כפולות משמר את המשמעות המילולית של כל התווים, למעט דולר ($) backquote (') ו- Backslash (). הקו האחורי בתוך ציטוטים כפולים הוא מוזר מבחינה היסטורית, והוא משמש לצטט רק את הדמויות הבאות: $ ` אחרת זה נשאר מילולי. מילים שמורות הן מילים בעלות משמעות מיוחדת לקליפה ומוכרות בתחילת שורה ואחרי מפעיל בקרה. להלן מילים שמורות: ! Taאליף Ta fi Ta מלבדניעבור Ta Ta אז {Ta} לעשות טאנעשתה te na אם Taac esac משמעותם נדונה מאוחר יותר. כינוי הוא שם וערך מקביל מוגדר באמצעות הפקודה כינוי (1) מובנית. בכל פעם שמתרחשת מילה שמורה (ראה לעיל), ולאחר בדיקה של מילים שמורות, הקליפה בודקת את המילה כדי לראות אם היא תואמת כינוי. אם כן, הוא מחליף אותו בזרם הקלט עם הערך שלו. לדוגמה, אם יש כינוי הנקרא `` lf`` עם הערך `ls-f '' ולאחר מכן הקלט: פוואר יהפוך ls-foobar כינויים מספקים דרך נוחה עבור משתמשים תמימים ליצור קצרנות עבור פקודות מבלי ללמוד כיצד ליצור פונקציות עם טיעונים. הם יכולים לשמש גם כדי ליצור קוד מוסתר לקסיקלית. שימוש זה אינו מעודכן. הקליפה מפרשת את המילים שהיא קוראת על פי שפה, המפרט שלה הוא מחוץ להיקף של דף האיש הזה (עיין BNF בPOSIX 1003.2 מסמך). בעיקרו של דבר, שורה היא לקרוא ואם המילה הראשונה של הקו (או אחרי מפעיל שליטה) היא לא מילה שמורות, ואז הקליפה זיהתה פקודה פשוטה. אחרת, ייתכן שמדובר בפקודה מורכבת או במבנה מיוחד אחר. אם פקודה פשוטה זוהו, הקליפה מבצעת את הפעולות הבאות: המילים המובילות של הטופס `` name = value '' מופשטות ומוקצות לסביבה של הפקודה הפשוטה. מפעילי הניתוב מחדש והארגומנטים שלהם (כמתואר להלן) מופשטים ושמורים לעיבוד. המילים הנותרות מורחבות כמתואר בסעיף שנקרא 'הרחבות', והמילה הנותרת נחשבת לשם הפקודה והפקודה ממוקמת. שאר המילים נחשבות לטיעוני הפקודה. אם לא צוין שם פקודה, אזי הקצאת המשתנים "שם = ערך" המוכרת בסעיף 1 משפיעה על הקליפה הנוכחית. ניתוב מחדש מתבצע כמתואר בסעיף הבא. ניתובים מחדש ניתוב מחדש משמש לשינוי פקודה שבה הוא קורא את הקלט שלו או שולח את הפלט שלו. באופן כללי, ניתובים מחדש פותחים, סוגרים או משכפלים הפניה קיימת לקובץ. הפורמט הכולל המשמש להפניה מחדש הוא: n קובץ redir-op איפה Redir-op הוא אחד מפעילי ההפניה המוזכרים לעיל. להלן רשימה של ניתובים מחדש אפשריים. ה- Bq הוא מספר אופציונלי, כמו ב- '3' (לא 'Bq 3' המתייחס לתיאור קובץ. n> קובץ הפניה מחדש של פלט סטנדרטי (או n) לקובץ. n> | קובץ אותו הדבר, אך לדרוס את -ג אפשרות. n >> קובץ צרף פלט סטנדרטי (או n) לקובץ. n <קובץ הפניה מחדש של קלט רגיל (או n) מקובץ. n1 <& n2 קלט רגיל כפול (או n1) מתיאור הקובץ n2. n <& - סגור קלט רגיל (או n). n1> & n2 כפולים פלט סטנדרטי (או n1) מ n2. n> & - סגור פלט סטנדרטי (או n). n <> קובץ פתח קובץ לקריאה וכתיבה על קלט רגיל (או n). ניתוב מחדש זה נקרא לעתים קרובות "here-document" n << מפריד כאן-טקסט-טקסט … מפריד כל הטקסט בקווים עוקבים עד למפריד נשמר והופך לפקודה על קלט רגיל, או על מתאר קובץ n אם הוא צוין.אם התו המפריד בקו ההתחלתי מצוטט, הרי שהטקסט של "doc-text" מטופל פשוטו כמשמעו, אחרת הטקסט כפוף להרחבת פרמטרים, להחלפת פקודות ולהרחבה אריתמטית (כמתואר בסעיף "הרחבות") "אם המפעיל הוא" << - "במקום" "" ", אזי מובילות הכרטיסיות המובילות בטקסט זה. ישנם שלושה סוגים של פקודות: פונקציות פגז, פקודות מובנות ותוכניות רגילות - והפקודה מתבקשת (לפי שם) בסדר זה. כל אחד מהם מבוצע בצורה שונה. כאשר פונקצית פגז מבוצעת, כל הפרמטרים של נקודת המעטפת (למעט $ 0, אשר נותרים ללא שינוי) מוגדרים לארגומנטים של פונקציית המעטפת. המשתנים שמוצבים במפורש בסביבה של הפקודה (על ידי הצבת מטלות אליהם לפני שם הפונקציה) נעשים מקומית לפונקציה ומוגדרים לערכים שניתנו. לאחר מכן פקודה שניתנה בהגדרת הפונקציה מתבצעת. הפרמטרים positional משוחזרים לערכים המקוריים שלהם עם השלמת הפקודה. כל זה מתרחש בתוך הקליפה הנוכחית. פגזים מובנים מבוצעים באופן פנימי על הקליפה, מבלי להרכיב תהליך חדש. אחרת, אם שם הפקודה אינו תואם לפונקציה או מובנית, הפקודה מתבקשת כתוכנית רגילה במערכת הקבצים (כפי שמתואר בסעיף הבא). כאשר תוכנית רגילה מבוצעת, הקליפה מפעילה את התוכנית, מעבירה את הטיעונים ואת הסביבה לתוכנית. אם התוכנית אינה קובץ הפעלה רגיל (כלומר, אם זה לא מתחיל עם "מספר הקסם" אשרASCII הייצוג הוא "#!", ולכן execve (2) מחזירה EN ENEXEX אז) את הקליפה יהיה לפרש את התוכנית בתוך subhell. הקונכייה של הילד תיצור את עצמה מחדש במקרה זה, כך שהאפקט יהיה כאילו הופעל פגז חדש כדי לטפל בתסריט הקליפה האד-הוק, אלא שמיקום פקודות השהות שנמצאות בקליפת האב ייזכר על ידי ילד. שים לב כי גירסאות קודמות של מסמך זה ואת קוד המקור עצמו מטעה ו sporadically מתייחסים סקריפט פגז ללא מספר קסם כמו "הליך קליפה". בעת איתור פקודה, הקליפה הראשונה נראית כדי לראות אם יש לה פונקציה פגז בשם זה. לאחר מכן הוא מחפש פקודה מובנית בשם זה. אם פקודה מובנית לא נמצאה, קורה אחד משני דברים: שמות פקודה המכילים קו נטוי פשוט מתבצע ללא ביצוע חיפושים. הקליפה מחפשת כל כניסהPathH בתורו את הפקודה. הערך שלPathHמשתנה צריך להיות סדרה של ערכים מופרדים על ידי colons. כל רשומה מורכבת מספריה. הספרייה הנוכחית עשויה להיות מסומנת במשתמע על ידי שם ספרייה ריק, או במפורש על ידי תקופה אחת. מצב יציאה של פקודה לכל פקודה יש מצב יציאה שיכול להשפיע על אופן הפעולה של פקודות פגז אחרות. הפרדיגמה היא כי פקודה יוצאת עם אפס עבור רגיל או הצלחה, ולא אפס עבור כישלון, שגיאה או אינדיקציה שווא. דף האיש עבור כל פקודה צריך לציין את קודי היציאה השונים ואת מה שהם מתכוונים. בנוסף, הפקודות המובנות מחזירות קודי יציאה, כמו גם פונקציה פגז מבוצע. פקודות מורכבות הן שילובים של פקודות פשוטות עם מפעילי בקרה או מילים שמורות, יחד יצירת פקודה מורכבת יותר. באופן כללי יותר, פקודה היא אחת מהפעולות הבאות: אלא אם כן צוין אחרת, מצב היציאה של הפקודה הוא של הפקודה הפשוטה האחרונה שבוצעה על ידי הפקודה. צינור הוא רצף של פקודה אחת או יותר מופרדות על ידי מפעיל הבקרה. הפלט הסטנדרטי של כל הפקודה מלבד האחרון מחובר קלט רגיל של הפקודה הבאה. הפלט הסטנדרטי של הפקודה האחרונה הוא בירושה מן הפגז, כרגיל. הפורמט של צינור הוא: ! Command1 | הפקודה … הפלט הסטנדרטי של פקודה 1 מחובר לקלט הסטנדרטי של הפקודה 2. הקלט הסטנדרטי, הפלט הסטנדרטי או פקודה ייחשבו כמקושרים על ידי הצינור לפני כל ניתוב מחדש שמציינים מפעילי ניתוב מחדש המהווים חלק מהפקודה. אם הצינור אינו ברקע (נדונה בהמשך), הקונכייה מחכה שכל הפקודות יושלמו. אם המילה שמורה! אינו מקדים את הצינור, מצב היציאה הוא מצב היציאה של הפקודה האחרונה שצוינה בצינור. אחרת, מצב היציאה הוא לא הגיוני של מצב היציאה של הפקודה האחרונה. כלומר, אם הפקודה האחרונה מחזירה אפס, מצב היציאה הוא 1; אם הפקודה האחרונה מחזירה יותר מאפס, מצב היציאה הוא אפס. בגלל הקצאת צינור של קלט סטנדרטי או פלט סטנדרטי או שניהם מתרחשת לפני ניתוב מחדש, זה יכול להיות שונה על ידי ניתוב מחדש. לדוגמה: $ command 2>> 1 הפקודה שולח הן את הפלט הסטנדרטי ואת שגיאת התקן של הפקודה 1 לקלט הסטנדרטי של הפקודה 2. A; או שים לב שבניגוד לקונכיות אחרות, כל תהליך בצינור הוא ילד של פגז הפתיחה (אלא אם כן הוא פגז שנבנה בקליפה הנוכחית - אבל כל מה שיש לו על הסביבה נמחק). אם פקודה מסתיימת על-ידי מפעיל הבקרה (&), הקליפה מבצעת את הפקודה באופן אסינכרוני - כלומר, הקליפה אינה ממתינה לסיום הפקודה לפני ביצוע הפקודה הבאה. הפורמט להפעלת פקודה ברקע הוא: Command1 & Command2 & … אם הקליפה אינה אינטראקטיבית, הקלט הסטנדרטי של פקודה אסינכרונית מוגדר ל- / dev / null רשימה היא רצף של אפס או יותר פקודות מופרדות על ידי שורות חדשות, פסיק או אמפרסנדס, וסיומת אופציונלית על ידי אחד מאותם שלושה תווים. הפקודות ברשימה מבוצעות בסדר שבו הן נכתבות. אם הפקודה באה על ידי אמפרסנד, פגז מתחיל את הפקודה ומיד להמשיך על הפקודה הבאה; אחרת היא מחכה שהפקודה תסתיים לפני שתמשיך לשלב הבא. `` & `` `ו` `| '' הם אופרטורים רשימה-AND. הפקודה '& &' 'מבצעת את הפקודה הראשונה, ולאחר מכן מבצעת את הפקודה השנייה אם מצב היציאה של הפקודה הראשונה הוא אפס. `` '' '' דומה, אבל מבצעת את הפקודה השנייה אם מצב היציאה של הפקודה הראשונה הוא nonzero. "` && '' ו- `` | '' הן בעלות עדיפות זהה. התחביר של הפקודה if הוא אם ברשימה ולאחר מכן רשימה רשימת אליף ולאחר מכן ברשימה … רשימה אחרת Fi התחביר של הפקודה בזמן הוא בעוד ברשימה לעשות רשימה בוצע שתי הרשימות מבוצעות שוב ושוב, כאשר מצב היציאה של הרשימה הראשונה הוא אפס. הפקודה עד היא דומה, אבל יש את המילה עד במקום של זמן, מה שגורם לו לחזור עד למצב היציאה של הרשימה הראשונה היא אפס. התחביר של הפקודה הוא משתנה במילה … לעשות רשימה בוצע המילים מורחבות, ולאחר מכן הרשימה מבוצעת שוב ושוב עם המשתנה מוגדר לכל מילה בתורו. לעשות ולעשות יכול להיות מוחלף עם `` {'' ו '' '' ' התחביר של הפסק והפקודה להמשיך הוא הפסקה num המשך num הפסקה מסתיימת num פנימי עבור או בזמן לולאות. המשך ממשיך עם האיטרציה הבאה של הלולאה הפנימית ביותר. אלה מיושמים פקודות מובנה. התחביר של פקודת המקרה הוא חם המילה ב דפוס) רשימה ;; … esac התבנית יכולה להיות למעשה תבנית אחת או יותר (ראה תבניות Shell שתוארו בהמשך), מופרדים בתווים "". ניתן לקבץ פקודות גם באמצעות כתיבה (רשימה) או { רשימה; הראשון מביצע את הפקודות ב subhell. פקודות מובנות מקובצות ברשימה (רשימה) לא ישפיעו על הקליפה הנוכחית. הטופס השני אינו מזלג פגז נוסף ולכן מעט יותר יעיל. הקבצה של פקודות יחדיו מאפשרת לך לנתב מחדש את הפלט שלהם כאילו היו תוכנית אחת: {printf hello; printf world n ";}> ברכה פונקציות התחביר של הגדרת פונקציה הוא name () הגדרת פונקציה היא הצהרת הפעלה; כאשר מבוצע הוא מתקינה פונקציה בשם בשם ומחזירה מצב יציאה של אפס. הפקודה היא בדרך כלל רשימה סגורה בין `` {'' לבין ``} '' ניתן להגדיר משתנים כמקומיים לפונקציה באמצעות פקודה מקומית. זה אמור להופיע כהצהרה הראשונה של פונקציה, ואת התחביר הוא מקומי משתנה | - … מקומי מיושם כפקודה מובנית. כאשר משתנה נעשה מקומי, הוא יורש את הערך הראשוני ואת הדגלים המיוצאים והמקוראים מהמשתנה עם אותו שם בטווח המקיף, אם קיים. אחרת, המשתנה בתחילה אינו מוגדר. הקונכייה משתמשת בסקירה דינאמית, כך שאם אתה עושה את המשתנה x מקומי לפונקציה f, אשר לאחר מכן מכנה את הפונקציה g, הפניות למשתנה x בתוך גרם יתייחסו למשתנה x שהוצהר בתוך f, לא למשתנה הגלובלי x . הפרמטר המיוחד היחיד שניתן לעשות הוא מקומי - '' 'עושה' `- '' מקומי כל אפשרויות פגז שמשתנות באמצעות הפקודה set בתוך הפונקציה שישוחזרו לערכים המקוריים שלהם כאשר הפונקציה תחזור. התחביר של הפקודה Return הוא חזור יציאה זה מסתיים את הפונקציה ביצוע כרגע. החזרה מיושמת כפקודה מובנית. הקליפה שומרת על מערכת פרמטרים. פרמטר הנקרא בשם נקרא משתנה. כאשר מתחיל, את הקליפה הופכת את כל משתני הסביבה למשתנים פגז. משתנים חדשים ניתן להגדיר באמצעות הטופס ערך = שם למשתנים שהוגדרו על ידי המשתמש חייב להיות שם המורכב רק מאלפביתיות, מספרות וקווים תחתונים - הראשון שבהם אינו חייב להיות מספרי. פרמטר יכול גם להיות מסומן על ידי מספר או תו מיוחד כמוסבר להלן. פרמטר positional הוא פרמטר המסומן במספר (n> 0). הקונכייה מגדירה את אלה תחילה לערכים של ארגומנטים משורת הפקודה שלהם, אשר עוקבים אחר שם הסקריפט פגז. סט (1) מובנה יכול לשמש גם כדי להגדיר או לאפס אותם. פרמטר מיוחד הוא פרמטר המסומן על ידי אחד התווים המיוחדים הבאים. ערך הפרמטר מופיע ליד תו. * מרחיב את הפרמטרים positional, החל מאחד. כאשר מתרחשת התרחבות בתוך מחרוזת כפולה מצוטטת זה מתרחב לשדה אחד עם הערך של כל פרמטר מופרדים על ידי התו הראשון שלIFS משתנה, או על ידי @ מרחיב את הפרמטרים positional, החל מאחד.כאשר מתרחשת התרחבות בתוך ציטוטים כפולים, כל פרמטר positional מתרחב כארגומנט נפרד. אם אין פרמטרים positional, ההרחבה של @ יוצרת אפס ארגומנטים, גם כאשר @ מצוטט פעמיים. מה זה בעצם אומר, למשל, אם $ 1 הוא "abc" ו $ 2 הוא "def ghi" ואז QQ $ @ מתרחב שתי טיעונים: abc def ghi # מתרחב למספר הפרמטרים positional. ? מתרחב למצב היציאה של הצינור האחרון. - (מקף). מתרחב לדגלי האפשרויות הנוכחיים (שמות האותיות החד-אותיות המשורשרות למחרוזת) כפי שצוין בהפניה, על-ידי הפקודה setin מובנית, או במרומז על ידי הקליפה. $ מתרחב למזהה התהליך של הקליפה שהופעלה. Subhell שומרת על אותו ערך של $ כהורה שלה. ! מתרחב למזהה התהליך של פקודת הרקע האחרונה שבוצעה מהקליפה הנוכחית. עבור צינור, מזהה התהליך הוא זה של הפקודה האחרונה בצנרת. 0 (אפס). מתרחב לשם של פגז או סקריפט פגז. הרחבות Word סעיף זה מתאר את ההרחבות השונות המבוצעות על מילים. לא כל ההרחבות מבוצעות על כל מילה, כפי שהוסבר בהמשך. הרחבות טילדה, הרחבות פרמטרים, החלפת פקודות, הרחבות אריתמטיות, והסרות ציטוט המתרחשות בתוך מילה אחת מתרחבות לשדה אחד. זה רק פיצול השדה או הרחבת נתיב שיכול ליצור שדות מרובים ממילה אחת. החריג היחיד לכלל זה הוא הרחבת הפרמטר המיוחד @ בתוך ציטוטים כפולים, כפי שתואר לעיל. סדר הרחבת המילים הוא: הרחבת טילדה, הרחבת פרמטר, החלפת פיקוד, התרחבות אריתמטית (כל אלה מתרחשים באותו זמן). פיצול שדה מבוצע על שדות הנוצרים על ידי צעד (1) אלא אם כןIFS המשתנה הוא null. הרחבה Pathname (אלא אם כן מוגדר -ו הוא למעשה). ציטוט להסרה. התו $ משמש להוספת הרחבת פרמטרים, תחליף פקודה או הערכה אריתמטית. מילה המתחילה עם אופי tilde לא מצוטט (~) נתון להרחבת tilde. כל התווים עד לקו נטוי (/) או בסוף המילה מטופלים כשם משתמש ומוחלפים בספריית הבית של המשתמש. אם שם המשתמש חסר (כמו ב ~ / foobar) tilde מוחלף עם הערך של בית משתנה (ספריית הבית של המשתמש הנוכחי). הפורמט להרחבת פרמטרים הוא כדלקמן: $ {expression} כאשר הביטוי מורכב מכל התווים עד שהתאמה '``' '' '' '' 'נמלטת על ידי קו נטוי הפוך או בתוך מחרוזת מצוטטת, ותווים בהרחבות אריתמטיות מוטבעות, תחליפי פקודות והרחבות משתנות, לא נבדקים בקביעת התאמת ``} '' הצורה הפשוטה ביותר להרחבת פרמטרים היא: $ {parameter} הערך, אם בכלל, של הפרמטר מוחלף. שם הפרמטר או הסמל יכולים להיות סגורים בסוגריים, שהם אופציונליים פרט לפרמטרים מיקומיים עם יותר מספרת אחת או כאשר פרמטר עוקב אחר תו שניתן לפרשו כחלק מהשם. אם מתרחבת התרחבות פרמטרים בתוך ציטוטים כפולים: הרחבת Pathname אינה מבוצעת על תוצאות ההתרחבות. פיצול השדה אינו מתבצע על תוצאות ההתרחבות, למעט @. בנוסף, ניתן לשנות את הרחבת הפרמטר באמצעות אחד מהפורמטים הבאים. $ {parameter: -word} השתמש בערכי ברירת מחדל. אם הפרמטר אינו מוגדר או ריק, הרחבת המילה מוחלפת; אחרת, ערך הפרמטר מוחלף. $ {parameter: = word} הקצה ערכי ברירת מחדל. אם הפרמטר אינו מוגדר או ריק, ההרחבה של המילה מוקצית לפרמטר. בכל המקרים, הערך הסופי של הפרמטר מוחלף. רק משתנים, לא פרמטרים positional או פרמטרים מיוחדים, ניתן להקצות בדרך זו. $ {parameter:? word} ציין שגיאה אם Null או Unset. אם הפרמטר הוא unset או null, הרחבת המילה (או הודעה המציינת את זה הוא unset אם המילה מושמט) כתוב שגיאת תקן ואת פגז יוצא עם מצב היציאה nonzero. אחרת, ערך הפרמטר מוחלף. פגז אינטראקטיבי לא צריך לצאת. $ {parameter: + word} השתמש בערך חלופי. אם הפרמטר אינו מוגדר או null, null מוחלף; אחרת, הרחבת המילה מוחלפת. בהרחבות הפרמטרים שהוצגו בעבר, השימוש במעי הגס בתבנית גורם לבדיקת פרמטר שאינו מוגדר או ריק; השמטה של המעי הגס תוצאות במבחן פרמטר כי הוא רק unset. $ {# parameter} אורך המחרוזת. האורך בתווים של ערך הפרמטר. להלן ארבעה סוגים של הרחבת פרמטר לספק עיבוד תחליפים. בכל מקרה, סימון התאמת דפוס (ראה תבניות Shell), במקום סימון ביטוי רגיל, משמש להערכת הדפוסים. אם הפרמטר הוא * או @, התוצאה של ההתרחבות אינה מוגדרת. סגירת מחרוזת הרחבת הפרמטר המלאה במרכאות כפולות אינה גורמת לארבעה סוגים שונים של דמויות דפוס להיות מצוטטות, ואילו לצטט תווים בתוך הפלטה יש השפעה זו. $ {parameter% word} הסר את תבנית הסיומת הקטנה ביותר. המילה מורחבת כדי לייצר דפוס. הרחבת הפרמטר ואז התוצאות פרמטר, עם החלק הקטן ביותר של הסיומת תואמים דפוס נמחק. $ {parameter %% word} הסר את תבנית הסיומת הגדולה ביותר.המילה מורחבת כדי לייצר דפוס. הרחבת הפרמטרים מכן גורמת לפרמטר, כאשר החלק הגדול ביותר של הסיומת מתאים לדפוס שנמחק. $ {parameter # word} הסר את תבנית הקידומת הקטנה ביותר. המילה מורחבת כדי לייצר דפוס. הרחבת הפרמטר ואז התוצאות פרמטר, עם החלק הקטן ביותר של הקידומת תואמת את תבנית נמחק. $ {parameter ## word} הסר את תבנית הקידומת הגדולה ביותר. המילה מורחבת כדי לייצר דפוס. הרחבת הפרמטרים ואז התוצאות פרמטר, עם החלק הגדול ביותר של הקידומת התואמת את דפוס נמחק. החלפת פיקוד החלפת פקודות מאפשרת להחליף את הפלט של פקודה במקום את שם הפקודה עצמה. החלפת פקודות מתרחשת כאשר הפקודה סגורה כך: $ (הפקודה) או פו "backquoted" גרסה PC: הפקודה הקליפה מרחיבה את תחליף הפקודה על ידי ביצוע פקודה בסביבת משנה ומחליפה את החלפה הפקודה עם הפלט הסטנדרטי של הפקודה, הסרת רצפים של אחד או יותר הרחבה אריתמטית מספקת מנגנון להערכת ביטוי אריתמטי ומחליפים את ערכו. פורמט ההתרחבות האריתמטית הוא כדלקמן: $ ((ביטוי)) הביטוי מטופל כאילו היה במרכאות כפולות, אלא שציטוט כפול בתוך הביטוי אינו מטופל במיוחד. הקליפה מרחיבה את כל האסימונים בביטוי להרחבת פרמטרים, החלפה של פקודות והסרת ציטוט. לאחר מכן, הקליפה מתייחסת לזה כאל ביטוי אריתמטי ומחליפה את ערך הביטוי. לאחר הרחבת פרמטרים, החלפת פקודות והרחבה אריתמטית, הקליפה סורקת את התוצאות של הרחבות ותחליפים שלא התרחשו במרכאות כפולות עבור פיצול שדה, ושדות מרובים עלולים לגרום. הקליפה מתייחסת לכל דמותIFS כמפריד ולהשתמש בתוחמים כדי לפצל את התוצאות של הרחבת פרמטר ותחליף פקודה לשדות. אלא אם כן ה -ו הדגל מוגדר, הדור שם הקובץ מבוצע לאחר פיצול מילה הושלמה. כל מילה נתפסת כסדרה של דפוסי, מופרדים על ידי חתכים. תהליך ההרחבה מחליף את המילה בשמות של כל הקבצים הקיימים ששמותיהם יכולים להיווצר על ידי החלפת כל תבנית במיתר שמתאים לדפוס שצוין. ישנן שתי הגבלות על זה: ראשית, דפוס לא יכול להתאים מחרוזת המכילה קו נטוי, ושנית, דפוס לא יכול להתאים מחרוזת החל עם תקופה אלא אם התו הראשון של התבנית היא תקופה. הסעיף הבא מתאר את הדפוסים המשמשים להרחבת Pathname והן לפקודה (1). תבנית מורכבת מתווים רגילים, התואמים את עצמם, ומטא-תווים. המטא-תווים הם '' '' '' '' '' '' '' '' '' '' '' '' '' '' תווים אלה מאבדים את המשמעויות המיוחדות שלהם אם הם מצוטטים. כאשר הפקודה או החלפת משתנה מבוצע ואת הסימן דולר או ציטוטים בחזרה אינם מצוטט פעמיים, הערך של המשתנה או את הפלט של הפקודה נסרק עבור תווים אלה והם הפכו תווים meta. כוכבית ('' '' ') מתאימה לכל מחרוזת תווים. סימן שאלה מתאים לכל תו בודד. סוגר שמאלי ('' '') מציג מחלקת תווים. הסוף של מחלקת התווים מסומן על ידי ('`' '' ') אם ה -' '' חסר, אזי ה - '' 'תואם ל -' '' 'במקום' '. מחלקה של תו מתאימה לכל אחד מהתווים בין הסוגריים המרובעים. ניתן לציין טווח תווים באמצעות סימן מינוס. מחלקה אופי יכול להיות משלים על ידי הפיכת סימן קריאה את התו הראשון של המחלקה אופי. כדי לכלול '`' 'במחלקת תווים, יש להפוך את התו הראשון ברשימה (אחרי ה -' '' 'אם בכלל). כדי לכלול סימן מינוס, רשום אותו בתו הראשון או האחרון סעיף זה מפרט את הפקודות המובנות שנבנו משום שהן צריכות לבצע פעולה שאינה ניתנת לביצוע על ידי תהליך נפרד. בנוסף לאלה, ישנן מספר פקודות אחרות שיכולות להיות מובנות ליעילות (למשל הד 1). : פקודה null המחזירה ערך יציאה 0 (true). . קובץ הפקודות בקובץ שצוין נקראות ומופיעות על ידי הקליפה. כינוי שם מחרוזת = … אם מחרוזת שם = מוגדר, הפגז מגדיר את הכינוי שם עם ערך מחרוזת אם רק שם שצוין, הערך של הכינוי שם מודפס. ללא ויכוחים,כינוי Builtin מדפיס את השמות והערכים של כל כינויים מוגדרים (ראהunalias) bg עבודה … המשך את המשימות שצוינו (או את העבודה הנוכחית אם לא ניתנות עבודות) ברקע. פקודה שורת הפקודה בצע את הפקודה המובנית מובנית. (אפשרות זו שימושית כאשר יש לך פונקציית מעטפת בעלת שם זהה לפקודה מובנית). cd ספרייה עבור לספרייה שצוינה (ברירת מחדל$ HOME) אם רשומה עבורCDPATH מופיע בסביבה שלcd הפקודה או משתנה הקליפהCDPATH מוגדר ואת שם המדריך לא מתחיל עם קו נטוי, ולאחר מכן את הספריות המפורטותCDPATH יחפש את הספריה שצוינה. הפורמט שלCDPATH הוא זהה לזה שלPathH קליפה אינטראקטיבית,cd הפקודה תדפיס את שם הספריה שהיא עברה אליה אם היא שונה מהשם שהמשתמש נתן. אלה עשויים להיות שונים או בגללCDPATH נעשה שימוש במנגנון או בגלל שקישור סימבולי עבר. להעריך … לשרשר את כל הטיעונים עם רווחים. ואז מחדש לנתח ולבצע את הפקודה. exec שורת הפקודה אלא אם כן הפקודה מושמטת, תהליך הקליפה מוחלף עם התוכנית שצוין (אשר חייב להיות תוכנית אמיתית, לא פגז שנבנה או פונקציה). כל ניתובים מחדש בexecהפקודה מסומנים קבועים, כך שהם לא יבוטלו כאשרexec הפקודה מסתיימת. יציאה - יציאה סיים את תהליך הקליפה. אם - יציאה הוא נתון זה משמש מעמד היציאה של הקליפה; אחרת נעשה שימוש במצב היציאה של הפקודה הקודמת. יצוא שם … יצוא -p השמות שצוינו מיוצאים כך שיופיעו בסביבה של הפקודות הבאות. הדרך היחידה לא לייצא משתנה היא לא לקבץ אותו. הקונכייה מאפשרת להגדיר את הערך של המשתנה באותו זמן שהוא מיוצא על ידי כתיבה ייצוא שם = ערך ללא ארגומנטים, פקודת הייצוא מפרטת את שמות כל המשתנים המיוצאים. עם ה -עמ 'אופציה שצוין את הפלט יהיה בפורמט מתאים לשימוש לא אינטראקטיבי. fc-ה עורך ראשון אחרון fc -l -nr ראשון אחרון fc -s ישן = חדש ראשון הfc מובנה רשימות, או עריכות מבצעת מחדש, פקודות שנכנסו קודם לכן פגז אינטראקטיבי. - עורך השתמש בעורך בשם העורך כדי לערוך את הפקודות. מחרוזת העורך היא שם פקודה, כפוף לחיפוש דרךPathH משתנה. הערך בFCEDIT משתנה משמש כברירת מחדל כאשר -ה לא צוין. אםFCEDIT הוא ריק או לא מוגדר, הערך שלעורך משתנה. אםעורך הוא ריק או unset, ed (1) משמש העורך. -l (ell) רשום את הפקודות במקום ליצור עורך עליהן. הפקודות נכתבות ברצף שצוין על ידי האופראנים הראשונים והאחרונים, כפי שנפגעו -ייצור כאשר כל פקודה קודמת למספר הפקודה. -n דיכוי מספרי פקודה בעת הרישום עם -l. -r הפוך את סדר הפקודות המפורטות (עם -l או לערוך (ללא -l ולא -s) - s הפעל מחדש את הפקודה מבלי להזדקק לעורך. ראשון אחרון בחר את הפקודות לרשימה או עריכה. מספר הפקודות הקודמות שניתן לגשת אליו נקבע על פי הערך שלHISTSIZE משתנה. הערך של הראשון או האחרון או שניהם הוא אחד מאלה: + מספר מספר חיובי המייצג מספר פקודה; מספרי הפקודה ניתן להציג עם -l אפשרות. -מספר מספר עשרוני שלילי המייצג את הפקודה שבוצעה מספר פקודות בעבר. לדוגמה, -1 הוא הפקודה הקודמת באופן מיידי. מחרוזת מחרוזת המציינת את הפקודה שהוזנה לאחרונה שמתחילה במחרוזת זו. אם האופראן החדש = חדש לא צוין גם עם -s צורת המחרוזת של האופראן הראשון אינה יכולה להכיל סימן שווה מוטבע. משתני הסביבה הבאים משפיעים על ביצוע fc: FCEDIT שם העורך לשימוש. HISTSIZE מספר הפקודות הקודמות הנגישות. fg עבודה העבר את העבודה שצוינה או את העבודה הנוכחית לחזית. getopts var הPOSIX getopts הפקודה, לא להתבלבל עם מעבדות בל -ויאט Trans לקבל (1). הארגומנט הראשון צריך להיות סדרה של אותיות, שכל אחת מהן עשויה להיות אופציונלית עוקבת אחר נקודתיים כדי לציין שהאפשרות דורשת ארגומנט. המשתנה שצוין מוגדר לאפשרות הניתוח. הgetopts הפקודה מבטל את השירות הישן יותר getopt (1) עקב הטיפול בו של טיעונים המכילים שטח לבן. הgetopts הבנין עשוי לשמש כדי לקבל אפשרויות ואת הטיעונים שלהם מתוך רשימה של פרמטרים. כאשר מופעל,getopts מציב את הערך של האפשרות הבאה ממחרוזת האפשרות ברשימה במשתנה הקליפה שצוין על ידי var וזה מדד המשתנה פגזOPTIND כאשר הפגז הוא מופעל,OPTIND הוא מאותחל ל 1. עבור כל אפשרות הדורשת ארגומנט,getopts הבנין ימקם אותו במשתנה הקליפהOPTARG אם אופציה אינה מותרת ב- אופציונלי לאחר מכןOPTARG לא יופעלו. אופציונלי הוא מחרוזת של אותיות אופציה מוכרות. אם האות עוקבת אחר נקודתיים, האפשרות צפויה להיות בעלת ארגומנט, אשר ניתן להפריד ממנו או לא להפריד אותו בחלל לבן. אם תו אופציה לא נמצא במקום הצפוי,getopts יקבע את המשתנה var ל "?"getopts לאחר מכן לא יוגדרOPTARG ולכתוב פלט שגיאת תקן. על ידי הגדרת נקודתיים כדמות הראשונה של אופציונלי כל השגיאות יתעלמו. ערך nonzero מוחזר כאשר האפשרות האחרונה מגיעה. אם אין ארגומנטים שנותרו,getopts ייקבע var לאופציה המיוחדת, "-" "אחרת, זה ייקבע var ל "?" קטע הקוד הבא מראה כיצד ניתן לעבד את הארגומנטים עבור פקודה שיכולה לקחת את האפשרויות a ו- b ואת האפשרות c המחייבת ארגומנט. בעוד getopts abc: fלעשותמארז $ fa b) דגל = $ f ;;c) carg = $ OPTARG ;;?) echo $ USAGE; יציאה 1 ;;esacבוצעshift `expr $ OPTIND - 1` קוד זה יקבל כל אחת מהפעולות הבאות: קובץ קובץ cmd -acargcmd-a-c קובץ קובץ argcmd-carg-file הקובץcmd -a-carg - קובץ הקובץ hash -rv פקודה… הקליפה שומרת על שולחן חשיש שזוכר את מיקומי הפקודות. ללא טיעונים כלשהם,hash הפקודה מדפיסה את תוכן הטבלה. ערכים שלא נראו מאז האחרוןcd הפקודה מסומנים בכוכבית; ייתכן שהערכים האלה אינם חוקיים. עם ויכוחים,hash הפקודה מסיר את הפקודות שצוין מהטבלה חשיש (אלא אם כן הם פונקציות) ולאחר מכן מאתר אותם. עם ה -v אפשרות, hash מדפיס את מיקומי הפקודות כפי שהוא מוצא אותם. ה -ייצור אפשרות גורמת לפקודת hash למחוק את כל הערכים בטבלה חשיש למעט עבור פונקציות. התפקיד עבודה הדפס את מזהה התהליך של התהליכים בתפקיד. אם עבודה הטיעון מושמט, העבודה הנוכחית משמשת. מקומות תעסוקה פקודה זו מפרטת את כל תהליכי הרקע שהם ילדים של תהליך הקליפה הנוכחי. pwd הדפס את הספרייה הנוכחית. הפקודה המובנית עשויה להיות שונה מהתוכנית של אותו שם מכיוון שהפקודה המובנית זוכרת מה היא הספרייה הנוכחית ולא מחזירה אותה מחדש בכל פעם. זה עושה את זה מהר יותר. עם זאת, אם הספריה הנוכחית שמם, הגירסה המובנית שלpwd תמשיך להדפיס את השם הישן עבור הספרייה. לקרוא-עמ ' הפקודה -ייצור משתנה … הפקודה תודפס אם -עמ ' אופציונלית שצוין והקלדה הסטנדרטית היא מסוף. לאחר מכן, הוא קורא שורה מתוך קלט רגיל. הקו החוזר הנמחק נמחק מהקו והקו מחולק כמתואר בסעיף על פיצול מילים לעיל, והחלקים מוקצים למשתנים לפי סדר. יש לציין לפחות משתנה אחד. אם יש יותר חתיכות מאשר משתנים, את החלקים הנותרים (יחד עם תווים בIFS המפרידים ביניהם) מוקצים למשתנה האחרון. אם יש יותר משתנים מאשר חתיכות, שאר המשתנים מוקצים מחרוזת null. הלקרוא Builtin יציין הצלחה, אלא אם כן EOF הוא נתקל על קלט, ובמקרה זה כישלון מוחזר. כברירת מחדל, אלא אם כן -ייצור אופציה שצוין, הקו נטוי "" משמש כתו בריחה, גורם לתו הבא להיות מטופל באופן מילולי. אם קו נטוי הפוך מופיע על ידי שורה חדשה, הקו נטוי הקו ו הקו החדש יימחקו. לקריאה בלבד שם … readonly -p השמות שצוינו מסומנים כנקראו בלבד, כך שלא ניתן יהיה לשנותם או לשנותם לאחר מכן. הקליפה מאפשרת להגדיר את הערך של משתנה באותו זמן שהוא מסומן לקריאה רק על ידי כתיבה ערך = readonly = value ללא ארגומנטים הפקודה readonly מפרטת את שמות כל המשתנים לקריאה בלבד. עם ה -עמ ' אופציה שצוין את הפלט יהיה בפורמט מתאים לשימוש לא אינטראקטיבי. בחר { -אופציות | + אפשרויות | - arg … הבחר הפקודה מבצעת שלוש פונקציות שונות. ללא ארגומנטים, הוא מפרט את הערכים של כל משתני הקליפה. אם ניתנות אפשרויות, הוא קובע את דגל האופציה שצוין, או מנקה אותן כמתואר בסעיף שנקרא עיבוד רשימת ארגומנטים של Sx. השימוש השלישי בפקודה set הוא להגדיר את הערכים של הפרמטרים posational של פגז לארגומנטים שצוין. כדי לשנות את הפרמטרים positional מבלי לשנות את כל האפשרויות, השתמש ב- `` - '' כארגומנט הראשון להגדרה. אם לא קיימים ארגומנטים, הפקודה set תנקה את כל הפרמטרים posational (שווה ערך לביצוע '`$ $ shift'. '' ערך משתנה מקצה ערך למשתנה. (באופן כללי עדיף לכתוב משתנה = ערך במקום להשתמשסטוואר סטווארנועד לשמש בפונקציות המקצות ערכים למשתנים ששמותיהם מועברים כפרמטרים). משמרת n שינוי הפרמטרים positional n פעמים. אמשמרת קובע את הערך של $1 לערך של $2 הערך של $2 לערך של $3 וכן הלאה, להקטין את הערך של $# על ידי אחד. אם n גדול ממספר הפרמטרים הפוזיציוניים,משמרת ינפיק הודעת שגיאה ויציאה עם סטטוס חזרה 2. פעמים להדפיס את המשתמש המצטבר פעמים המערכת עבור הקליפה עבור תהליכים לרוץ מן הקליפה. סטטוס ההחזרה הוא 0. מלכודת פעולה האות … לגרום לקליפה לנתח ולבצע פעולה כאשר כל האותות שצוינו מתקבלים. האותות נקבעים על ידי מספר האות. אם האות J0 הפעולה מתבצעת כאשר פגז יוצא. פעולה יכול להיות ריק או "-" "לשעבר גורם את האות שצוין להיות התעלמו ואת האחרון גורם הפעולה ברירת המחדל להילקח. כאשר מזלג המזלג מחוץ subhell, הוא מאפס אותות לכודים (אבל לא התעלם) לפעולת ברירת המחדל. המלכודת הפקודה אין כל השפעה על אותות אשר התעלמו על הכניסה לקליפה. הקלד שם … לפרש כל שם כפקודה ולהדפיס את הרזולוציה של חיפוש הפקודה. רזולוציות אפשריות הן: מילת מפתח פגז, כינוי, buildin פגז, הפקודה, כינוי מעקב ולא נמצא. עבור כינויים הרחבת הכינוי מודפסת; עבור פקודות ו כינויים מעקב את הנתיב המלא של הפקודה מודפס. ulimit-H -S -a -tfdscmlpn ערך לברר או להגדיר את גבולות קשה או רך על תהליכים או להגדיר גבולות חדשים.הבחירה בין גבול קשה (אשר אין תהליך מותר להפר, אשר לא ניתן להעלות פעם הוא הוריד) ואת גבול רך (מה שגורם תהליכים להיות מסומן אבל לא בהכרח נהרג, אשר עשוי להיות העלה) הוא עשה עם הדגלים -H להגדיר או לברר על גבולות קשים -S לקבוע או לשאול על גבולות רכים. אם לא -ח ולא -S שצוין, המגבלה הרכה מוצגת או שנקבעו שתי הגבולות. אם שניהם צוינו, האחרון זוכה. את הגבול להיבדק או להגדיר, ולאחר מכן, נבחר על ידי ציון כל אחד הדגלים האלה: - א להראות את כל המגבלות הנוכחיות -t הצג או קבע את המגבלה על זמן המעבד (בשניות) -f להציג או להגדיר את המגבלה על הקובץ הגדול ביותר שניתן ליצור (ב 512 בתים בתים) ד הצג או הגדר את המגבלה על גודל קטע הנתונים של תהליך (בקילו-בתים) - s להציג או להגדיר את המגבלה על גודל ערימה של תהליך (ב kilobytes) -ג להציג או להגדיר את הגבול על גודל הליבה הגדול ביותר הליבה כי ניתן לייצר (ב 512 בתים בתים) -M להציג או להגדיר את המגבלה על הזיכרון הפיזי הכולל שיכול להיות בשימוש על ידי תהליך (ב kilobytes) -L לה
ציטוט
Backslash
ציטוטים בודדים
ציטוטים כפולים
מילים שמורות
כינויים
פקודות
פקודות פשוטות
חיפוש וביצוע
חיפוש נתיב
פקודות מורכבות
צינורות
פקודות רקע -
רשימות - באופן כללי
מפעילי רשימת מעגלים קצרים
בקרת זרימה - אם, במקרה, עבור, במקרה
הקבצה פקודות יחד
משתנים ופרמטרים
פרמטרים
פרמטרים מיוחדים
הרחבת טילדה (החלפת ספריית הבית של המשתמש)
הרחבת הפרמטר
הרחבה אריתמטית
פיצול שטח לבן (פיצול שדה)
הרחבת נתיב (שם קובץ)
דפוסי מעטפת
בניינים מובנים




