/ כיצד להפעיל שתי פקודות מסוף או יותר בו-זמנית ב- Linux

כיצד להפעיל שתי פקודות מסוף או יותר בו-זמנית ב- Linux

00_lead_image_combining_commands

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

שילוב של שתי פקודות או יותר בשורת הפקודה נקרא גם "שרשור פקודות". אנו נראה לכם דרכים שונות בהן תוכלו לשלב פקודות בשורת הפקודה.

אפשרות ראשונה: מפעילת הפסיק (;)

קשורים: מדריך למתחילים לכתיבת פגזים: היסודות

מפעיל הפסיק (;) מאפשר לבצעפקודות מרובות ברצף, ללא קשר אם כל פקודה קודמת מצליחה. לדוגמה, פתח חלון מסוף (Ctrl + Alt + T באובונטו ולינוקס מינט). לאחר מכן הקלד את שלוש הפקודות הבאות בשורה אחת, מופרדות באמצעות נקודה-פסיק ולחץ על Enter. זה ייתן לך רשימה של הספרייה הנוכחית ( ls ), גלה באיזה ספרייה אתה נמצא כרגע ( pwd ), ולהציג את שם הכניסה שלך ( whoami ) הכל בבת אחת.

ls ; pwd ; whoami

אתה גם לא צריך להכניס רווחים בין נקודה-פסיק לפקודות. אתה יכול להזין את שלוש הפקודות כ- ls;pwd;whoami . עם זאת, רווחים הופכים את הפקודה המשולבת לקריאה יותר, דבר שימושי במיוחד אם אתה מכניס פקודה משולבת לסקריפט פגז.

01_combining_commands_with_semicolon_operator

אפשרות שנייה: ההגיוני והמפעיל (&&)

אם אתה רוצה שהפקודה השנייה תפעל רק אם הפקודה הראשונה מצליחה, הפרד את הפקודות עם מפעיל ה- AND ההגיוני, שהוא שני אמפרנדים ( && ). לדוגמה, אנו רוצים ליצור ספרייה בשם MyFolder ואז לשנות לתיקיה זו - בתנאי שהיא נוצרה בהצלחה. אז אנו מקלידים את הדברים הבאים בשורת הפקודה ונלחץ על Enter.

mkdir MyFolder && cd MyFolder

התיקיה נוצרה בהצלחה, כך cd הפקודה בוצעה ואנחנו כעת בתיקיה החדשה.

אנו ממליצים להשתמש במפעיל ה- AND והגיוני ולא במפעיל-הפסיק רוב הזמן (;). זה מבטיח שלא תעשה שום דבר אסון. לדוגמה, אם אתה מפעיל פקודה לשנות לספרייה ואז מכריח להסיר את כל הספרייה באופן רקורסיבי ( cd /some_directory ; rm -Rf * ), אתה עלול בסופו של דבר להרוס את המערכת שלך אם שינוי הספריה לא היה קורה. לא שאנו ממליצים להפעיל פקודה להסרת ללא תנאי את כל הקבצים בספרייה בבת אחת.

02_combining_commands_with_logical_and_operator

אפשרות שלישית: מפעיל הגיוני OR (||)

לפעמים ייתכן שתרצה לבצע פקודה שנייה רק ​​אם הפקודה הראשונה תעשה כן לא להצליח. לשם כך אנו משתמשים במפעיל OR הלוגי, או בשני פסי אנכיים ( || ). לדוגמה, אנו רוצים לבדוק אם הספרייה של MyFolder קיימת ( [ -d ~/MyFolder ] ) וצור אותו אם לא ( mkdir ~/MyFolder ). אז אנו מקלידים את הפקודה הבאה בשורת ההקשה ולחץ על Enter.

[ -d ~/MyFolder ] || mkdir ~/MyFolder

וודא שיש רווח אחרי הסוגריים הראשון ולפני הסוגר השני או הפקודה הראשונה הבודקת אם הספרייה קיימת לא תעבוד.

בדוגמה שלנו, ספריית MyFolder אינה קיימת, ולכן הפקודה השנייה יוצרת את הספרייה.

03_combining_commands_with_logical_or_operator

שילוב של מפעילים מרובים

ניתן גם לשלב מספר מפעילים בשורת הפקודה. לדוגמה, אנו רוצים לבדוק תחילה אם קיים קובץ ( [ -f ~/sample.txt ] ). אם כן, אנו מדפיסים הודעה למסך האומרת כך ( echo “File exists.” ). אם לא, אנו יוצרים את הקובץ ( touch ~/sample.txt ). אז אנו מקלידים את הדברים הבאים בשורת הפקודה ולחצו על Enter.

[ -f ~/sample.txt ] && echo “File exists.” || touch ~/sample.txt

בדוגמה שלנו, הקובץ לא היה קיים ולכן נוצר.

04_שימוש_שני_הבדלים_הפעלה

להלן סיכום שימושי של כל אחד מהמפעילים המשמשים לשילוב פקודות:

  • A ; B - הפעל A ואז B, ללא קשר להצלחה או לכישלון של A
  • A && B - הפעל B רק אם A הצליח
  • A || B - הפעל B רק אם A נכשל

ניתן להשתמש בכל השיטות הללו לשילוב פקודות גם בסקריפטים של קליפות הן בלינוקס והן ב- Windows 10.

באפשרותך גם לתקן אוטומטית איות והקלדות הקלדה כאשר אתה משתמש "cd" בשורת הפקודה בלינוקס, כדי למנוע השלכות דרסטיות בעת שילוב פקודות.