אנדרואיד

לינוקס הפקודה nohup

Using nohup to allows jobs to continue on logout

Using nohup to allows jobs to continue on logout

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

Anonim

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

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

כיצד להשתמש בפקודת nohup

התחביר לפקודה nohup הוא כדלקמן:

nohup COMMAND

הפקודה אינה מקבלת אפשרויות אחרות מלבד --version הסטנדרטית - --version .

בואו נסתכל על הדוגמא הבאה:

nohup mycommand

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

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

אם אתה מתנתק או סוגר את הטרמינל, התהליך לא מסתיים.

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

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

כדי להריץ את הפקודה ברקע, הוסף את הסמל & בסיום הפקודה:

nohup mycommand &

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

25177

אתה יכול להשתמש במזהה העבודה כדי להביא את הפקודה לקדמת הבמה באמצעות הפקודה fg .

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

kill -9 25132

הפניית הפלט לקובץ

כברירת מחדל, nohup מפנה מחדש את פלט הפקודה לקובץ nohup.out . אם ברצונך להפנות את הפלט לקובץ אחר, השתמש בניתוב הפגז הרגיל.

לדוגמה, כדי להפנות מחדש את הפלט הסטנדרטי ואת שגיאת התקן ל- mycommand.out תשתמש:

nohup mycommand > mycommand.out 2>&1 &

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

nohup mycommand > mycommand.out 2> mycommand.err &

אלטרנטיבות

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

מסך

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

טמוקס

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

הכחיש

disown הוא מעטפת מובנית המסלקת עבודת מעטפת מבקרת העבודה של הפגז. שלא כמו nohup , אתה יכול להשתמש disown גם בתהליכים פועלים.

סיכום

nohup מאפשר לך למנוע את הפסקת הפקודות כשאתה יוצא או יוצא מהטרמינל.

מסוף nohup