אנדרואיד

כיצד להפעיל פקודות לינוקס ברקע

ª

ª

תוכן עניינים:

Anonim

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

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

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

הפעל פקודת לינוקס ברקע

להפעלת פקודה ברקע, הוסף את סמל האמפרסנד ( & ) בסוף הפקודה:

command &

מזהה עבודת המעטפת (מוקף בסוגריים) ומזהה התהליך יודפסו על הטרמינל:

25177

אתה יכול להפעיל מספר תהליכים ברקע בו זמנית.

תהליך הרקע ימשיך לכתוב הודעות לטרמינל ממנו הזמנת את הפקודה. כדי לדכא את הודעות stdout ו- stderr השתמש בתחביר הבא:

command > /dev/null 2>&1 &

>/dev/null 2>&1 פירושו הפניית stdout ל- /dev/null ו- stderr ל- stdout .

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

jobs -l

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

+ 25177 Running ping google.com &

כדי להביא תהליך רקע לקדמת הבמה, השתמש בפקודה fg :

fg

fg %1

כדי להפסיק את תהליך הרקע, השתמש בפקודת ה- kill ואחריה מזהה התהליך:

kill -9 25177

העבר תהליך חזית לרקע

כדי להזיז תהליך חזית פועל ברקע:

  1. עצור את התהליך על ידי הקלדת Ctrl+Z העבר את התהליך שהופסק לרקע על ידי הקלדת bg .

שמור על תהליכי רקע לאחר יציאת מעטפת

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

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

disown

disown %1

ודא שהמשימה מוסרת מטבלת המשרות הפעילות באמצעות הפקודה jobs -l . לרשימת כל התהליכים הרצים, כולל המפורשים השתמש בפקודת ps aux .

דרך נוספת לשמור על התהליך לאחר יציאת הקליפה היא להשתמש ב- nohup .

הפקודה nohup מבצעת תוכנית אחרת שצוינה SIGHUP ומתעלמת מכל אותות ה- SIGHUP (Hangup). SIGHUP הוא אות שנשלח לתהליך כאשר מסוף השליטה שלו סגור.

להפעלת פקודה ברקע באמצעות הפקודה nohup , הקלד:

nohup command &

פלט הפקודה מופנה לקובץ nohup.out .

nohup: ignoring input and appending output to 'nohup.out'

אלטרנטיבות

ישנן מספר תוכניות המאפשרות לקיים מספר פעילויות אינטראקטיביות בו זמנית.

מסך

מסך או מסך GNU היא תוכנית מרבב מסופי המאפשרת לך להתחיל הפעלת מסך ולפתוח כל מספר חלונות (מסופים וירטואליים) בתוך אותה הפעלה. תהליכים הפועלים במסך ימשיכו לפעול כאשר החלון שלהם אינו גלוי גם אם תתנתק.

טמוקס

Tmux היא אלטרנטיבה מודרנית למסך GNU. עם Tmux, אתה יכול גם ליצור הפעלה ולפתוח מספר חלונות בתוך אותה הפעלה. הפעלות ב- Tmux מתמשכות, מה שאומר שתוכניות הפועלות ב- Tmux ממשיכות לפעול גם אם סוגרים את הטרמינל.

סיכום

כדי להריץ פקודה ברקע, כלול & בסוף הפקודה.

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

nohup fg bg משרות מונעות מסוף