لینکس میں ایک سے زیادہ کمانڈز کیسے چلائیں۔

How Run Multiple Commands Linux



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

پائپ (|) آپریٹر ایک وقت میں دو یا زیادہ متعلقہ کمانڈ چلانے کے لیے استعمال ہوتا ہے۔ اگلی کمانڈ کی ان پٹ پچھلی کمانڈ کی پیداوار ہوگی۔ لہذا ، ہر کمانڈ کی کامیابی پہلے کمانڈ کے بغیر پہلے کمانڈ کی کامیابی پر منحصر ہے۔ مندرجہ ذیل کمانڈ میں ، پہلی کمانڈ ، ایل ایس موجودہ مقام کی فائلوں اور فولڈرز کی فہرست تلاش کریں گے اور دوسری کمانڈ کے لیے ان پٹ کے طور پر آؤٹ پٹ بھیجیں گے ، ڈبلیو سی . یہ ان پٹ ڈیٹا کی بنیاد پر لکیروں ، الفاظ اور حروف کی کل تعداد پرنٹ کرے گا۔







$ایل ایس - | ڈبلیو سی خوش قسمتی سے



سیمیکولن (؛) آپریٹر۔

سیمیکولن (؛) آپریٹر ایک وقت میں دو یا زیادہ غیر متعلقہ کمانڈز چلانے کا عادی ہے۔ اس کا مطلب یہ ہے کہ ہر کمانڈ کی پیداوار دوسرے کمانڈز پر منحصر نہیں ہے۔ مندرجہ ذیل مثال میں ، تین قسم کے کمانڈز کو ایک ساتھ جوڑا جاتا ہے اور ہر کمانڈ کی ناکامی دوسرے کمانڈز کے آؤٹ پٹ پر اثر پیدا نہیں کرے گی۔ پہلی کمانڈ ایک فائل کا مواد چھاپے گی ، دوسری کمانڈ ایک ڈائریکٹری بنائے گی اور تیسری کمانڈ موجودہ ڈائریکٹری کو بدل دے گی۔



$کیٹmyfile.txtmkdirnewdirسی ڈیڈیسک ٹاپ





منطقی اور (&&) آپریٹر۔

کمانڈ جو منطقی اور (&&) کے ذریعہ چلتے ہیں ایک دوسرے سے متعلق ہیں جیسے پائپ (|) کمانڈ۔ لہذا ، اگر پچھلی کمانڈ کامیابی سے عمل نہیں کرے گی تو اگلے کمانڈ کام نہیں کریں گے۔ مندرجہ ذیل مثال میں ، دو کمانڈز ، mkdir ، اور rmdir مل کر && آپریٹرز۔ تو ، یہ mkdir کمانڈ کامیابی سے چلانے میں ناکام ہے پھر rmdir کمانڈ عمل میں نہیں آئے گی۔ ls کمانڈ کے آؤٹ پٹ کے مطابق ، myDir ڈائریکٹری موجودہ مقام میں پہلے سے موجود ہے۔ تو پہلی کمانڈ نہیں چلائے گی اور اس کے لیے دوسری کمانڈ بھی نہیں چلائے گی۔

$ایل ایس
$mkdirmyDir&& rmdirدرجہ حرارت
$ایل ایس



منطقی یا (||) آپریٹر۔

منطقی یا (||) آپریٹر منطقی اور (&&) آپریٹر کے برعکس ہے۔ اگلی کمانڈ عملدرآمد کرے گی اگر پچھلی کمانڈ عملدرآمد کرنے میں ناکام رہی۔ مندرجہ ذیل مثال میں تین کیٹ کمانڈ OR (||) آپریٹر کے ساتھ مل گئے ہیں۔ جب آپ کمانڈ چلائیں گے ، سب سے پہلے ، یہ cat.txt فائل کے مواد کو ظاہر کرنے کی کوشش کرے گا۔ اگر موجودہ جگہ میں ایسی کوئی فائل موجود نہیں ہے تو وہ اگلی کمانڈ پر عمل کرنے کی کوشش کرے گی۔ آؤٹ پٹ کے مطابق ، bird.txt فائل موجودہ مقام پر موجود ہے اور اس فائل کا مواد دکھایا گیا ہے۔

$ cat cat.txt || cat dog.txt || cat bird.txt

ایک سے زیادہ آپریٹرز کے ساتھ ایک سے زیادہ کمانڈز۔

آپ ایک وقت میں ایک سے زیادہ کمانڈز چلانے کے لیے ایک سے زیادہ آپریٹرز استعمال کر سکتے ہیں۔ مندرجہ ذیل مثال میں ، تین کمانڈز OR (||) اور AND (&&) آپریٹرز کے ساتھ مل جاتی ہیں۔ کمانڈ چلانے کے بعد ، سب سے پہلے ، اگر ڈائریکٹری موجود ہے تو یہ موجودہ ڈائریکٹری کو newdir میں تبدیل کردے گی۔ اگر یہ کمانڈ ناکام ہوجاتی ہے تو یہ دوسری کمانڈ پر عمل کرکے ڈائریکٹری بنائے گی اور پیغام پرنٹ کرے گی ، ڈائریکٹری بن جائے گی۔ آؤٹ پٹ کے مطابق ، newdir ڈائریکٹری موجودہ مقام پر موجود نہیں ہے۔ لہذا ، غلطی کا پیغام ظاہر ہوتا ہے اور ڈائریکٹری بعد میں بنائی جاتی ہے۔

$سی ڈیnewdir|| mkdirnewdir&& باہر پھینک دیا 'ڈائریکٹری بن گئی ہے'

کمبی نیشن آپریٹر {}

اس آپریٹر کا استعمال کرتے ہوئے دو یا اس سے زیادہ کمانڈز کو جوڑا جا سکتا ہے اور اگر پہلی کمانڈ پر عملدرآمد ناکام ہو جاتا ہے تو دوسری کمانڈ عمل میں نہیں آئے گی۔ مندرجہ ذیل مثال میں ، یا ، اور مجموعہ آپریٹرز ایک ساتھ استعمال ہوتے ہیں۔ پہلے کمانڈ چیک کریں گے کہ موجودہ مقام پر ٹیمپ ڈائرکٹری موجود ہے یا نہیں۔ اگر پہلی کمانڈ ناکام ہوجاتی ہے تو یہ ایک عارضی ڈائرکٹری بنائے گی اور ایک پیغام پرنٹ کرے گی۔ آخری کمانڈ موجودہ ڈائریکٹری کی فہرست دکھائے گی۔

$[ -ڈیدرجہ حرارت] || { mkdirدرجہ حرارتباہر پھینک دیاعارضی ڈائریکٹری اب بنائی گئی ہے۔} && ایل ایس

ترجیحی آپریٹر ()

آپ اس آپریٹر کو پھانسی کے وقت کمانڈ کو گروپ کرنے کے لیے استعمال کر سکتے ہیں۔ یہاں ، ہر گروپ ایک کام کے طور پر کام کرے گا۔ مندرجہ ذیل مثال میں ، دو کمانڈ گروپس کی وضاحت کی گئی ہے اور اگر پہلا گروپ عملدرآمد کرنے میں ناکام رہا تو دوسرا گروپ عملدرآمد کرے گا۔

$(سی ڈیدرجہ حرارت&& ایل ایس-کو) || (mkdirدرجہ حرارت&& ایل ایس)

نتیجہ

اس ٹیوٹوریل نے لینکس میں ایک سے زیادہ کمانڈ چلانے کے لیے زیادہ تر استعمال شدہ آپریٹرز کی وضاحت کی۔ لیکن بہت سے دوسرے آپریٹرز بش میں موجود ہیں جو ایک ساتھ دو یا زیادہ کمانڈ چلانے کے لیے استعمال ہوتے ہیں۔ یہ امپرسینڈ (اور) ، ری ڈائریکٹ (، >>) ، منطقی نہیں (!) ، مجموعہ ({}) وغیرہ ہیں۔