Skip to main content

بش 'کے لئے' لوپ کے لینکس شیل سکرپٹ کی مثالیں

General Agreement on Tariffs and Trade (GATT) and North American Free Trade Agreement (NAFTA) (مئی 2024)

General Agreement on Tariffs and Trade (GATT) and North American Free Trade Agreement (NAFTA) (مئی 2024)
Anonim

بش (جو بور بور دوبارہ دوبارہ شیل کے لئے کھڑا ہے) سب سے زیادہ لینکس اور یونکس کی بنیاد پر آپریٹنگ سسٹم کی طرف سے استعمال کیا جاتا ایک سکرپٹ زبان ہے.

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

شیل سکرپٹ لکھنے کے بارے میں بہت اچھا بات یہ ہے کہ آپ انہیں بار بار چل سکتے ہیں. مثال کے طور پر تصور کریں کہ آپ کسی صارف کو کسی نظام میں شامل کرنے کی ضرورت ہے، ان کی اجازت مقرر کریں اور اپنے ماحول کو منظم کریں. آپ یا تو کاغذ کے کسی ٹکڑے پر حکم لکھ سکتے ہیں اور ان کو چلائیں جیسے آپ نئے صارفین کو شامل کر سکتے ہیں یا آپ ایک سکرپٹ لکھ سکتے ہیں اور صرف اس اسکرپٹ میں پیرامیٹرز کو منتقل کرسکتے ہیں.

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

کسی بھی پروگرامنگ اور سکرپٹ کی زبان کا ایک اہم حصہ یہ ہے کہ کوڈ کا ایک ہی ٹکڑا دوبارہ چلانے کی صلاحیت ہے.

کوڈ دوبارہ کرنے کے کئی طریقوں (بھی loops کے طور پر جانا جاتا ہے) ہیں. اس گائیڈ میں، آپ کو یہ پتہ چلا جاسکتا ہے کہ "لوپ" کے بارے میں لکھنا.

A کے لئے لوپ کو کوڈ کے ایک مخصوص حصے کو اور زیادہ سے زیادہ بار بار. وہ مفید ہیں تاکہ حکم کی سلسلہ جاری رکھے جاسکے جب تک کہ کسی خاص حالت سے ملاقات نہ ہو، اس کے بعد وہ روکے.

اس گائیڈ میں، آپ کو بش سکرپٹ کے اندر لوپ کے لئے استعمال کرنے کے پانچ طریقوں کو دکھایا جائے گا.

شروع کرنے سے پہلے

لوپ مثال کے ساتھ شروع کرنے سے پہلے، آپ کو ایک ٹرمینل ونڈو کھولنے اور ان مراحل پر عمل کرنے کی ضرورت ہے:

  1. درج کریں mkdir سکرپٹ (یہاں mkdir کے بارے میں مزید جانیں).

  2. درج کریں سی ڈی سکرپٹ (یہ ڈائرکٹری میں تبدیل سکرپٹ ).

  3. درج کریں نانو امتحان (کہاں ن ایسی مثال ہے جو آپ کام کر رہے ہیں).

  4. اسکرپٹ درج کریں.

  5. دبائیں CTRL + O بچانے اور CTRL + X اخراج کے لئے.

  6. رن بش کی جانچ پڑتال (پھر، کے ساتھ ن مثال کے طور پر آپ کام کر رہے ہیں).

لوپ کس طرح ایک فہرست کے ذریعے

#! / bin / bashfor نمبر 1 2 3 4 5doecho $ numberdoneexit 0

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

بیش میں "کے لئے" لوپ سب کے درمیان بیانات کیا اور کیا ہوا فہرست میں ہر چیز کے لئے ایک بار انجام دیا جاتا ہے.

مندرجہ بالا مثال میں، فہرست سب کچھ ہے جو لفظ کے بعد آتا ہے اندر (یعنی 1 2 3 4 5).

ہر بار جب لوپ آتی ہے تو، اس فہرست میں اگلے قیمت لفظ کے بعد مخصوص متغیر میں ڈال دیا جاتا ہے "کے لئے" . اوپر لوپ میں، متغیر کہا جاتا ہے نمبر .

گونگا بیان اسکرین پر معلومات کو ظاہر کرنے کے لئے استعمال کیا جاتا ہے.

لہذا، یہ مثال نمبر 1 سے 5 لیتا ہے اور ان میں سے ایک کو اسکرین پر آؤٹ کرتا ہے:

  • 1
  • 2
  • 3
  • 4
  • 5

آغاز اور اختتام پوائنٹ کے درمیان لوپ کیسے ہے

مندرجہ بالا مثال کے ساتھ مصیبت یہ ہے کہ اگر آپ بڑی فہرست پر عملدرآمد کرنا چاہتے ہیں (1 سے 500 تک)، یہ پہلی نمبر میں تمام نمبروں کو ٹائپ کرنے کے لئے عمر لگے گا.

یہ ہمیں دوسری مثال پر لاتا ہے جس سے پتہ چلتا ہے کہ کس طرح شروع اور اختتام نقطہ کی وضاحت کرنا ہے:

#! / bin / bashfor میں {1..10} نمبر درج کریں "$ number" haveexit 0

اصول بنیادی طور پر ایک ہی ہیں. لفظ کے بعد اقدار " میں " اس فہرست میں ترمیم کریں اور اس میں ہر قیمت کی فہرست متغیر (یعنی نمبر) میں رکھی جاتی ہے، اور ہر بار لوپ کا ایک بار پھر، کے درمیان بیانات کیا اور کیا ہوا کارکردگی کا مظاہرہ کیا جاتا ہے.

اہم فرق یہ ہے کہ اس فہرست کو تشکیل دیا گیا ہے. گھوبگھرالی بریکٹ {} بنیادی طور پر ایک رینج کی نشاندہی کرتا ہے، اور اس سلسلے میں، رینج 1 سے 10 ہے (دو نقطے ایک قطار کے آغاز اور اختتام کو الگ کر دیتا ہے).

لہذا، اس مثال کے طور پر، 1 اور 10 کے درمیان ہر ایک نمبر پر چلتا ہے اور اس طرح اسکرین پر نمبر آؤٹ کرتا ہے.

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

اسی لوپ اس طرح لکھا جا سکتا ہے، نحو کے ساتھ نحو کی پہلی مثال کے طور پر:

نمبر 2 کے لئے 1 2 3 4 5 6 7 8 9 10

ایک رینج میں نمبرز کیسے چھوڑیں

پچھلے مثال سے پتہ چلتا ہے کہ کس طرح آغاز اور اختتام نقطہ کے درمیان لوپ ہو، لہذا اب ہم دیکھیں گے کہ رینج میں نمبروں کو کیسے چھوڑیں.

تصور کریں کہ آپ 0 اور 100 کے درمیان لوپ کرنا چاہتے ہیں لیکن صرف ہر دس نمبر دکھائیں. مندرجہ ذیل اسکرپٹ سے پتہ چلتا ہے کہ یہ کس طرح کرنا ہے:

#! / بن / بیشاں تعداد میں {0..100..10} کرتے ہیں "$ number" haveexit 0

اصول بنیادی طور پر ایک ہی ہیں. وہاں ایک فہرست ہے، متغیر، اور بیانات کا ایک سیٹ کے درمیان کیا جائے گا کیا اور کیا ہوا . اس وقت کی فہرست اس طرح لگتی ہے: {0..100..10}.

پہلی نمبر 0 ہے اور اختتام نمبر 100 ہے. تیسری نمبر (10) اس فہرست میں موجود اشیاء کی تعداد ہے جو اسے چھوڑ دیں گے.

لہذا، مندرجہ بالا مندرجہ ذیل پیداوار دکھاتا ہے:

  • 0
  • 10
  • 20
  • 30
  • 40
  • 50
  • 60
  • 70
  • 80
  • 90
  • 100

لوپ کے لئے ایک اور روایتی تلاش

دیگر پروگرامنگ کی زبانوں کے مقابلے میں لوپ کے لئے لکھنے کا بش طریقہ تھوڑا عجیب ہے.

تاہم، آپ سی پروگرامنگ زبان کو اسی طرح کے سٹائل میں لوپ کے لئے لکھ سکتے ہیں، جیسے:

#! / bin / bashfor ((نمبر = 1؛ نمبر <100؛ نمبر ++)) {اگر ($ $ 5٪ == 0)) thenecho "$ نمبر تقسیم کی طرف سے 5" fi} باہر نکلیں 0

لوپ کو متغیر نمبر 1 کو ترتیب دے کر شروع ہوتا ہے (نمبر = 1 ). لوپ ایک بار کی قیمت 100 سے بھی کم ہے جبکہ اس کی تزئین کو برقرار رکھا جائے گا ( نمبر <100 ). کی قیمت نمبر ہر تکرار کے بعد 1 سے زائد اضافہ کرکے تبدیلی ( نمبر ++ ).

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

بہادروں کے درمیان تھوڑا سا قدر کی جانچ پڑتا ہے نمبر ، اس کی طرف سے تقسیم کرتا ہے، اور باقی 1 کی موازنہ کرتا ہے. اگر باقی باقی ہے تو نمبر 5 کی طرف سے تقسیم کیا جاتا ہے اور پھر سکرین پر ظاہر ہوتا ہے.

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

  • 5 کی طرف سے تقسیم کیا جاتا ہے 5
  • 10 کی طرف سے تقسیم کیا جاتا ہے 5
  • 15 کی طرف سے تقسیم ہونے والا ہے 5

اگر آپ اسپرشن کے مرحلے کے سائز کو تبدیل کرنا چاہتے ہیں تو آپ نمبر ++ سیکشن میں ترمیم کرسکتے ہیں نمبر = نمبر + 2 , نمبر = نمبر + 5 ، یا نمبر = نمبر + 10 وغیرہ

یہ مزید کم ہوسکتا ہے نمبر + = 2 یا نمبر + = 5 .

ایک عملی مثال

لوپ کے لئے اعداد وشماروں کی اس فہرست سے زیادہ زیادہ کر سکتے ہیں. آپ اصل میں فہرست کے طور پر دیگر حکموں کی پیداوار استعمال کر سکتے ہیں.

مندرجہ ذیل مثال سے پتہ چلتا ہے کہ کس طرح آڈیو فائلوں MP3 سے WAV تک تبدیل کریں:

#! / بن / بیشفائل کے لئے ./*.mp3dompg -w./wavs/"${file}".wav "$ file" کئے گئے

اس مثال میں فہرست ہر فائل کے ساتھ موجودہ فولڈر میں .میس 3 توسیع اور متغیر ہے فائل .

The Mpg کمانڈر MP3 فائل WAV میں بدلتا ہے. تاہم، آپ کو شاید آپ کے پیکیج مینیجر کا استعمال کرتے ہوئے اسے انسٹال کرنے کی ضرورت ہے.