پس منظر لینکس پر ایک عمل بھیجیں۔

Send Process Background Linux



گرافیکل ڈیسک ٹاپ ماحول کے ساتھ کام کرتے وقت ، ہم پس منظر کے عمل کے بارے میں شاذ و نادر ہی فکر کرتے ہیں۔ اگر ہمارے پاس پیش منظر میں کوئی عمل چل رہا ہے تو ، ہم جلدی سے ایک اور ٹرمینل ونڈو نکال سکتے ہیں اور اپنے کام کو جاری رکھ سکتے ہیں۔

تاہم ، اگر آپ ایس ایس ایچ جیسے خام ٹرمینل شیل میں ہیں تو ، آپ اکثر ان عملوں کے بارے میں فکر مند محسوس کریں گے جو شیل پر قبضہ اور بلاک کرتے ہیں جب تک کہ وہ مکمل نہ ہوجائیں ، خاص طور پر طویل عرصے سے چلنے والی ملازمتوں پر۔ اسی جگہ پس منظر اور پیش منظر کے عمل کا تصور عمل میں آتا ہے۔







یہ سبق بحث کرے گا کہ پس منظر اور پیش منظر کے عمل کیا ہیں ، بشمول انہیں لینکس میں بنانا اور ان کا انتظام کرنا۔



ایک عمل کیا ہے؟

مجھے بنیادی سطح پر شروع کرنے کی اجازت دیں: ایک عمل کیا ہے؟



لینکس میں ، ایک عمل ایک پروگرام کی مثال ہے۔ عام طور پر ، اس کا مطلب ہے کہ شیل میں کوئی بھی کمانڈ یا قابل عمل ایک عمل ہے۔





عمل کی بنیادی طور پر دو قسمیں ہیں:

  • پیشگی عمل۔
  • پس منظر کے عمل۔

پیش منظر کے عمل بنیادی طور پر عام ایپلی کیشنز ہیں جن کو ہم لانچ کرتے ہیں اور ان کے ساتھ بات چیت کرتے ہیں۔ ایک مثال Gnome میں نوٹیلس فائل منیجر ہوگی۔ زیادہ تر معاملات میں ، ہم شیل یا ڈیسک ٹاپ ماحول سے پیشگی عمل شروع کر سکتے ہیں۔



دوسری طرف ، پس منظر کے عمل پس منظر میں چلتے ہیں اور صارف سے کسی ان پٹ یا تعامل کی ضرورت نہیں ہوتی ہے۔ ایک عام لینکس ڈیمون ہو گا۔

پس منظر میں عمل کیسے چلائیں

فرض کریں کہ ہمارے پاس ایک ایسا عمل ہے جو ، چلتے وقت ، شیل سیشن پر قبضہ کر لیتا ہے اور جب تک یہ باہر نہیں نکلتا کمانڈ پر عمل کرنے سے ہمیں روکتا ہے۔

مثال کے طور پر ، اگر ہم فائر فاکس براؤزر کو شیل میں چلاتے ہیں ، تو یہ عمل ختم ہونے تک سیشن پر قبضہ کرلے گا۔

$فائر فاکس


جیسا کہ آپ دیکھ سکتے ہیں ، جب تک فائر فاکس چل رہا ہے ، شیل پرامپٹ دستیاب نہیں ہے ، اور ہم مزید کمانڈز پر عملدرآمد نہیں کر سکتے۔

اس کو حل کرنے کے لیے ، ہم اسے دو طریقوں سے کر سکتے ہیں:

1: ایمپرسینڈ (اور) کا استعمال

پہلا طریقہ امپرسینڈ اور سائن کا استعمال ہے۔ یہ شیل کو بتاتا ہے کہ پس منظر میں ایمپرسینڈ سے پہلے جو بھی کمانڈ چلتی ہے۔

ایک مثال:

فائر فاکس&

ایسے منظر نامے میں ، عمل پس منظر میں چلتا ہے اور ایک نئے شیل پرامپٹ کے طور پر پیدا ہوتا ہے جس سے ہمیں احکامات پر عملدرآمد جاری رکھنے کی اجازت ملتی ہے۔

یہ دو عددی شناخت کنندہ بھی دیتا ہے۔ مربع بریکٹ میں بند پہلا جاب آئی ڈی ہے ، جبکہ اگلا پروسیس آئی ڈی ہے۔

2: CTRL + Z ، bg کمانڈ کا استعمال۔

اگلا طریقہ جو آپ پروسیس کو پس منظر میں ڈالنے کے لیے استعمال کر سکتے ہیں وہ ہے CTRL + Z شارٹ کٹ استعمال کرنا۔ یہ عمل کو شیل کو روکنے سے روکتا ہے۔ اس کے بعد آپ bg کمانڈ کو پس منظر میں دھکیلنے کے لیے استعمال کر سکتے ہیں۔

مثال کے طور پر ، فائر فاکس لانچ کرکے شروع کریں:

$فائر فاکس

جب عمل چل رہا ہو ، CTRL + Z دبائیں۔ یہ آپ کا شیل پرامپٹ لوٹاتا ہے۔ آخر میں ، عمل کو پس منظر میں دھکیلنے کے لیے bg کمانڈ درج کریں۔

پس منظر کے عمل کو کیسے دکھائیں۔

پس منظر میں عمل دیکھنے اور انتظام کرنے کے لیے ، شیل میں جابز کمانڈ استعمال کریں۔ یہ موجودہ ٹرمینل سیشن میں بیک گراؤنڈ جابس دکھائے گا۔

مثال کے طور پر:

$نوکریاں

پس منظر کی نوکریوں کی ایک مثال:

پس منظر میں چلنے والے عمل کو پیش منظر میں لانے کے لیے ، fg کمانڈ کے بعد جاب آئی ڈی استعمال کریں۔

مثال کے طور پر ، فائر فاکس کام کو پیش منظر میں لانے کے لیے ، ہم کمانڈ استعمال کرتے ہیں:

$fg ٪

پس منظر میں دوبارہ ڈالنے کے لیے ، CTRL + Z دبائیں اس کے بعد bg کمانڈ۔

شیل کے مرنے کے بعد عمل کو مستقل کیسے بنایا جائے۔

جب آپ پس منظر میں عمل چلاتے ہیں ، اور آپ کا شیل سیشن ختم ہوجاتا ہے ، اس سے وابستہ تمام عمل ختم ہوجاتے ہیں ، جو پریشانی کا باعث بن سکتا ہے ، خاص طور پر اگر یہ SSH سیشن ہو۔

تاہم ، یہ بہت بڑا مسئلہ نہیں ہے اگر آپ ٹرمینل ملٹی پلیکسر جیسے tmux یا سکرین استعمال کرتے ہیں کیونکہ ، اس صورت میں ، آپ صرف سیشن کو دوبارہ جوڑ سکتے ہیں۔

تاہم ، اگر آپ ملٹی پلیکسر کے بغیر شیل سیشن چلاتے ہیں تو آپ نوہپ کمانڈ استعمال کرسکتے ہیں۔

نوہپ کمانڈ ہینگ اپس سے محفوظ ہے اور کسی عمل کو بھیجے گئے SIGHUP سگنل کو نظر انداز کر سکتا ہے۔

لہذا ، اگر آپ نوہپ کے ساتھ کمانڈ چلاتے ہیں تو ، یہ چلتا رہتا ہے یہاں تک کہ اگر شیل سیشن غلطی سے مر جائے۔

مثال کے طور پر ، فائر فاکس کو nohup کے ساتھ چلانے کے لیے ، کمانڈ استعمال کریں:

نہیںفائر فاکس&

اس عمل کو پس منظر میں چلایا جائے گا جیسا کہ شیل ختم ہونے تک برقرار رہے گا۔

آپ ایک نیا ٹرمینل سیشن چلا سکتے ہیں اور پس منظر کی نوکریاں دیکھ سکتے ہیں۔ آپ دیکھیں گے کہ عمل اب بھی پس منظر میں چل رہا ہے۔

نتیجہ

اس ٹیوٹوریل میں ، ہم نے لینکس میں پس منظر پر عمل چلانے اور بھیجنے کے مختلف طریقوں پر تبادلہ خیال کیا۔ ہم نے یہ بھی احاطہ کیا کہ کس طرح پس منظر کے عمل کو پس منظر میں لایا جائے اور شیل ختم ہونے پر ہینگ اپ کو برقرار رکھا جائے۔