כיצד להפעיל שניים או יותר פקודות מסוף בבת אחת ב - Linux
אם אתה משתמש ב- Linux, אתה יודע כמה שימושי שורת הפקודה יכול להיות עובד עם קבצים, התקנת תוכנה, ותוכניות ההשקה. אבל זה יכול להיות אפילו יותר יעיל אם אתה מפעיל פקודות מרובות בבת אחת.
שילוב של שתי פקודות או יותר בשורת הפקודה ידוע גם בשם "שרשור הפקודה". אנו נראה לך דרכים שונות ניתן לשלב פקודות בשורת הפקודה.
אפשרות אחת: מפעיל נקודה פסיק (;)
מפעיל נקודה-פסיק (;) מאפשר לך לבצע פקודות מרובות ברצף, ללא קשר לשאלה אם כל פקודה קודמת מצליחה. לדוגמה, פתח חלון טרמינל (Ctrl + Alt + T ב- Ubuntu ו- Linux Mint). לאחר מכן, הקלד את שלוש הפקודות הבאות בשורה אחת, מופרדות באמצעות נקודה פסיק, ולחץ על Enter. זה ייתן לך רשימה של הספרייה הנוכחית ( אני
), לברר איזה ספרייה אתה נמצא כרגע ( pwd
), ולהציג את שם הכניסה שלך ( מי אני
) הכל בבת אחת.
ls; pwd; מי אני
אתה לא צריך לשים רווחים בין נקודה פסיק לבין פקודות, או. ניתן להזין את שלוש הפקודות כ- l: pwd; whoami
. עם זאת, רווחים להפוך את הפקודה המשולבת קריא יותר, וזה שימושי במיוחד אם אתה מציב פקודה משולבת לתוך סקריפט פגז.
אפשרות שניה: המפעיל הלוגי והמפעיל (&&)
אם ברצונך שהפקודה השנייה תפעל רק אם הפקודה הראשונה תצליח, הפרד בין הפקודות עם המפעיל הלוגי AND, שהוא שתי אמפרסנדס ( Ball
). לדוגמה, אנחנו רוצים לעשות ספרייה בשם MyFolder ולאחר מכן לשנות את הספרייה, בתנאי שזה נוצר בהצלחה. לכן, אנו מקלידים את הפקודה הבאה בשורת הפקודה ולחצו על Enter.
MyFolder && cd MyFolder
התיקיה נוצרה בהצלחה, לכן cd
הפקודה בוצעה ואנו נמצאים כעת בתיקייה החדשה.
אנו ממליצים להשתמש באופרטור לוגי ולא במפעיל נקודה-פסיק רוב הזמן (;
). זה מבטיח שאתה לא עושה שום דבר אסון. לדוגמה, אם אתה מפעיל פקודה כדי לשנות לספרייה ולאחר מכן כוח להסיר הכל בספרייה זו רקורסיבית ( cd / some_directory; rm -Rf *
), אתה יכול בסופו של דבר להרוס את המערכת שלך אם השינוי במדריך לא קרה. לא שאנחנו ממליצים להפעיל פקודה להסיר ללא תנאי את כל הקבצים בספרייה בבת אחת.
אפשרות 3: מפעיל או לוגי לוגי (| |)
לפעמים ייתכן שתרצה לבצע פקודה שנייה רק אם הפקודה הראשונה עושה לא להצליח. לשם כך, אנו משתמשים באופרטור לוג לוגי, או שני פסים אנכיים ( ||
). לדוגמה, אנחנו רוצים לבדוק אם קיים ספריית MyFolder ( [-d ~ / MyFolder]
) וליצור אותו אם הוא לא ( mkdir ~ / MyFolder
). לכן, אנו מקלידים את הפקודה הבאה בשורת הפקודה ולחצו על Enter.
[-d ~ / MyFolder] || mkdir ~ / MyFolder
ודא שיש רווח לאחר סוגריים הראשון ולפני סוגר השני או את הפקודה הראשונה שבודקת אם הספרייה קיים לא יעבוד.
בדוגמה שלנו, ספריית MyFolder אינה קיימת, ולכן הפקודה השנייה יוצרת את הספריה.
שילוב מספר אופרטורים
ניתן לשלב גם אופרטורים מרובים בשורת הפקודה. לדוגמה, אנחנו רוצים לבדוק תחילה אם קיים קובץ ( [-f ~ / sample.txt]
). אם כן, אנו מדפיסים הודעה למסך שאומר זאת ( הד "קיים קובץ".
). אם לא, אנו יוצרים את הקובץ ( גע ~ ~ / sample.txt
). לכן, אנו מקלידים את הפקודה הבאה בשורת הפקודה ולחצו על Enter.
[-f ~ / sample.txt] && echo "קובץ קיים." | גע ~ ~ / sample.txt
בדוגמה שלנו, הקובץ לא היה קיים, אז הוא נוצר.
הנה סיכום שימושי של כל אחד מהמפעילים המשמשים לשלב פקודות:
-
A; ב
- הפעל A ולאחר מכן B, ללא קשר להצלחה או לכישלון של A -
A & B B
- הפעל B רק אם A הצליח -
A || ב
- הפעל רק אם A נכשל
כל השיטות הללו של שילוב פקודות יכול לשמש גם סקריפטים פגז על לינוקס ו- Windows 10.
אתה יכול גם לתקן באופן אוטומטי איות שגיאות כתיב בעת שימוש "cd" בשורת הפקודה בלינוקס, כדי למנוע השלכות דרסטי בעת שילוב פקודות.