ابتدائی گائیڈ بیش - حصہ 1 - ہیلو ورلڈ

انٹرنیٹ پر بہت سے رہنماؤں ہیں کہ کس طرح شیش کا استعمال کرتے ہوئے شیل سکرپٹ کیسے بنائے جائیں اور یہ گائیڈ تھوڑا سا مختلف اسپن دینے کا ارادہ رکھتا ہے کیونکہ یہ کسی ایسے شخص کی طرف سے لکھا جاتا ہے جو شیل لکھاوٹ کا تجربہ ہے.

اب آپ یہ سوچ سکتے ہیں کہ یہ ایک عجیب خیال ہے لیکن میں جانتا ہوں کہ کچھ ہدایات آپ سے بات کرتی ہیں جیسے کہ آپ پہلے ہی ایک ماہر ہیں اور دیگر رہنماؤں کو پیچھا کرنے میں بہت دیر لگے ہیں.

جب میرے لینکس / یونیسی شیل سکرپٹ کا تجربہ محدود ہے، میں تجارت کے ذریعہ سافٹ ویئر ڈویلپر ہوں اور میں سکرپٹ زبانوں پر پی ڈی ایل، پی ایچ پی اور VBScript جیسے ڈاب ہاتھ ہوں.

اس گائیڈ کے نقطۂٔٔٔٔٔٔٔٔٔٔٔٔٔٔٔٔٔٔ خیال یہ ہے کہ آپ سیکھ سکیں گے جیسے میں سیکھتا ہوں اور کسی بھی معلومات کو اٹھاؤ جو میں آپ کو منظور کرتا ہوں

شروع ہوا چاہتا ہے

واضح طور پر یہ بہت سارے نظریہ ہے کہ میں آپ کو براہ راست اس طرح منتقل کر سکتا ہوں جیسے شیل کی مختلف اقسام اور KSH اور CSH پر BASH استعمال کرنے کے فوائد کی وضاحت.

زیادہ سے زیادہ لوگ جب کچھ نیا سیکھتے ہیں تو پھر کودنے اور کچھ عملی مضامین کے ساتھ شروع کرنا چاہتے ہیں اور ذہن میں اس کے ساتھ میں آپ کو ٹریولیا کے ساتھ نہیں بننا چاہتا ہوں جو ابھی اہم نہیں ہے.

آپ کو اس ہدایت کی پیروی کرنے کی ضرورت ہے، ایک ٹیکسٹ ایڈیٹر اور ٹرمینل چل رہا ہے BASH (سب سے زیادہ لینکس کی تقسیم پر ڈیفالٹ شیل).

متن ایڈیٹرز

میں نے پڑھا ہے کہ دیگر ہدایات نے تجویز کیا ہے کہ آپ کو ایک متن ایڈیٹر کی ضرورت ہے جس میں حکموں کا رنگ کوڈنگ شامل ہے اور سفارش کردہ ایڈیٹرز یا تو VIM یا EMACS ہیں .

رنگ کوڈنگ اچھا ہے کیونکہ یہ حکم دیتا ہے جیسے آپ ان کو لکھتے ہیں لیکن مطلق ابتدائی طور پر آپ کو پہلے ہی ہفتوں کو کوڈ کی ایک لائن لکھنے کے بغیر VIM اور EMACS سیکھنے کے لۓ خرچ کر سکتا ہے.

میں سے دو میں سے EMAC کو ترجیح دیتا ہوں لیکن ایماندار ہونے کے لئے میں نینو ، گیڈیٹ یا پتیپاڈ جیسے سادہ ایڈیٹر کا استعمال کرنا چاہتا ہوں.

اگر آپ اپنے کمپیوٹر پر سکرپٹ لکھ رہے ہیں اور آپ جانتے ہیں کہ آپ ہمیشہ ایک گرافیکل ماحول تک رسائی حاصل کریں گے تو آپ اس ایڈیٹر کو منتخب کرسکتے ہیں جو آپ کے لئے بہترین کام کرتی ہے اور یہ یا تو گرافیکل جیسے جی ای ایڈ یا ایڈیٹر ہے جو ٹرمینل میں براہ راست چلتا ہے جیسے نانو یا ویم.

اس گائیڈ کے مقاصد کے لئے میں نینو کا استعمال کروں گا کیونکہ یہ لینکس کی اکثریت پر نیک نصب کیا جاتا ہے اور اس وجہ سے یہ ہے کہ آپ کو اس تک رسائی ملے گی.

ایک ٹرمینل ونڈو کھول رہا ہے

اگر آپ لینکسیکل ڈیسک ٹاپ جیسے لینکس ٹکسال یا یوبنٹو کے ساتھ لینکس کی تقسیم استعمال کررہے ہیں تو آپ CTRL + ALT + T پریس کرکے ایک ٹرمینل ونڈو کھول سکتے ہیں.

آپ کی سکرپٹ کہاں رکھنا ہے

اس سبق کے مقاصد کے لئے آپ اپنے سکرپٹ کو آپ کے گھر کے فولڈر کے تحت ایک فولڈر میں ڈال سکتے ہیں.

ٹرمینل کھڑکی کے اندر اندر یقینی بنائیں کہ آپ مندرجہ ذیل کمانڈ ٹائپ کرکے اپنے گھر کے فولڈر میں ہیں:

سی ڈی ~

سی ڈی کمانڈ میں تبدیلی کی ڈائرکٹری کے لئے کھڑا ہے اور ٹائل (~) آپ کے ہوم فولڈر کے لئے ایک شارٹ کٹ ہے.

آپ چیک کر سکتے ہیں کہ آپ صحیح جگہ میں ہیں مندرجہ ذیل کمانڈ ٹائپ کرکے:

پی ڈی ڈی

پی ڈی ڈی کمانڈ آپ کو اپنی موجودہ کام کرنے والی ڈائرکٹری (آپ ڈائرکٹری کے درخت میں کہاں ہیں) بتائے گا. میرے معاملے میں یہ واپس آیا / گھر / گیری.

اب واضح طور پر آپ اپنی سکرپٹ کو گھر کے فولڈر میں براہ راست نہیں کرنا چاہتے ہیں لہذا مندرجہ ذیل کمانڈ ٹائپ کرکے ایک فولڈر نامی فولڈر بنائیں.

mkdir سکرپٹ

مندرجہ ذیل کمانڈ ٹائپ کرکے نئے سکرپٹ فولڈر میں تبدیل کریں:

سی ڈی سکرپٹ

آپ کی پہلی سکرپٹ

یہ روایتی ہے جب سیکھنے کے پروگرام کو کس طرح پروگرام "ہیلو ورلڈ" میں صرف الفاظ کو آؤٹ کرنا ہے.

آپ کی سکرپٹ کے اندر اندر فولڈر مندرجہ ذیل کمانڈ درج کریں:

نانو helloworld.sh

اب نینو ونڈو میں درج ذیل کوڈ درج کریں.

#! / bin / bash گونگا "ہیلو دنیا"

نانو باہر نکلنے کے لئے فائل اور CTRL + X کو بچانے کیلئے CTRL + O پریس کریں.

اسکرپٹ خود کو مندرجہ ذیل بنا دیا گیا ہے:

#! / bin / bash آپ کو لکھتے ہیں کہ تمام سکرپٹ کے سب سے اوپر شامل کرنے کی ضرورت ہے، کیونکہ یہ ترجمانوں اور آپریٹنگ سسٹم کو فائل کو ہینڈل کرنے کے بارے میں پتہ چلتا ہے. بنیادی طور پر صرف اس میں ڈالنے کے لئے یاد ہے اور بھولنا کیوں کہ آپ ایسا کرتے ہیں.

دوسرا لائن ایک واحد کمانڈ ہے جس میں گونج کہا جاتا ہے، جس کا متن اسے فوری طور پر درج کرتا ہے.

نوٹ کریں کہ اگر آپ ایک سے زیادہ لفظ کو ظاہر کرنا چاہتے ہیں تو آپ الفاظ کے ارد گرد ڈبل کوٹ (") استعمال کرنے کی ضرورت ہے.

آپ اب سکرپٹ کو مندرجہ ذیل کمانڈ ٹائپ کرکے چلا سکتے ہیں:

sh helloworld.sh

الفاظ "ہیلو دنیا" ظاہر ہونا چاہئے.

سکرپٹ چلانے کا ایک اور طریقہ مندرجہ ذیل ہے:

./helloworld.sh

امکانات یہ ہے کہ اگر آپ اس ٹرمینل کو براہ راست اپنے ٹرمینل میں چلائیں تو آپ کو اجازت کی خرابی مل جائے گی.

اس طرح سکرپٹ کو چلانے کے لئے اجازت دینے کے لئے مندرجہ بالا درج کریں:

sudo chmod + x helloworld.sh

تو کیا اصل میں وہاں ہوا؟ آپ کیوں جہنم کو چلانے کے قابل نہیں تھے لیکن آپ کو چلانے کی اجازت نہیں تھی ./helloworld.sh ایک مسئلے کا سبب بن گیا؟

پہلا طریقہ یہ ہے کہ بش کے مترجم کو جو ایک ان پٹ کے طور پر helloworld.sh لیتا ہے اور اس سے کیا کام کرتا ہے. بش مترجم پہلے سے ہی چلانے کی اجازت ہے اور اسکرپٹ میں صرف حکموں کو چلانے کی ضرورت ہے.

دوسرا طریقہ آپریٹنگ سسٹم کو اسکرپٹ کے ساتھ کیا کرنا ہے اور اس وجہ سے اس کو عمل کرنے کے لئے ایک قابل عمل بٹ کی ضرورت ہوتی ہے.

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

اس کو حاصل کرنے کے مختلف طریقے ہیں. مثال کے طور پر آپ کو مندرجہ ذیل کوٹیشن کے نشانوں سے پہلے بیک اپ کی جگہ ڈال سکتے ہیں:

گونگا \ "ہیلو دنیا \"

یہ پیداوار "ہیلو دنیا" پیداوار کرے گا.

اگرچہ ایک منٹ انتظار کرو، اگر آپ \ "ہیلو دنیا \" ظاہر کرنا چاہتے ہو؟

ٹھیک ہے آپ فرار ہونے والے حروف سے فرار ہو سکتے ہیں

گونج \\ "\" ہیلو دنیا \\ "\"

یہ پیداوار \ "ہیلو دنیا \" پیدا کرے گا.

اب میں جانتا ہوں کہ آپ کیا سوچ رہے ہیں. لیکن میں واقعی میں \\ "\" ہیلو دنیا کو ظاہر کرنا چاہتا ہوں \\ "\"

گونج کا استعمال کرتے ہوئے ان تمام قسم کے حروف بہت بیوقوف ہوسکتے ہیں. وہاں ایک متبادل کمانڈر ہے جسے آپ کو استعمال کیا جا سکتا ہے printf.

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

پرنف '٪ s \ n' '\\ "\" ہیلو دنیا \\ "\"'

نوٹ کریں کہ ہم جس متن کا ڈسپلے کرنا چاہتے ہیں وہ ایک ہی حوالہ جات کے درمیان ہے. پرنف آرڈر آپ کی سکرپٹ سے متن تیار کرتا ہے. ٪ s کا مطلب یہ ہے کہ یہ ایک تار دکھایا جائے گا، \ n ایک نیا لائن آؤٹ کرتا ہے.

خلاصہ

ہم نے ایک حصہ میں واقعی بہت زیادہ جگہ نہیں لی ہے لیکن امید ہے کہ آپ کی پہلی سکرپٹ کام کر رہی ہے.

اگلے حصے میں ہم ہیلو دنیا کی سکرپٹ پر مختلف رنگوں میں متن ظاہر کرنے کے لئے، ان پٹ پیرامیٹرز کو قبول اور ہینڈل کرنے اور آپ کے کوڈ کو تبصرہ کرنے کے لئے بہتر بنانے کی کوشش کریں گے.