څنګه د BASH "لوپ لپاره" ولیکئ

په شیل سکریپونو کې د BASH "لپاره" لوپ څرنګه کارول

BASH (کوم چې د بور بیا بیا شیل لپاره ولاړ دی) د لینکس او ډیری لینکس او UNIX لخوا کارول شوي سیسټم سیسټمونو څخه کار اخیستل شوی لیکل شوی ژبه ده.

تاسو کولی شئ د BASH حکمونه په ترمینل کړکۍ کې د بل وروسته وروسته وټاکئ یا تاسو کولی شئ د شیل سکریټ تولید لپاره متن متن ته اضافه کړئ.

د شیل لیکونو لیکلو په اړه لوی شی دا دی چې تاسو دوی کولی شي بیا بیا وګرځوئ. د مثال په توګه تصور وکړئ تاسو ته اړتیا لرئ چې یو سیسټم په سیسټم کې اضافه کړئ، خپل اجازې وټاکئ او د دوی د پیل چاپیریال اداره کړئ. تاسو کولی شئ یا د کاغذ په یو کاغذ کې ولیکئ او تاسو یې کولی شئ نوي کاروونکي اضافه کړئ یا تاسو کولی شئ یو لپریپټیټ ولیکئ او یوازې په دې رسم الخط کې پیرامیټونه ولیکئ.

د لیکلو ژبو ژبو لکه BASH د نورو ژبو په شان ورته پروګرامونه جوړوي. د مثال په توګه، تاسو د کیتنې څخه د انټرنیټ ترلاسه کولو لپاره د واردولو پیرامیټونه کارولی شئ او دوی د متغیر په توګه زیرمه کړئ. بیا تاسو کولی شئ چې سکریپټ یو ځانګړی عمل ترسره کړئ چې د انټرنیټ پیرامیټونو ارزښت پر بنسټ .

د هر پروګرام کولو او سکتوري کولو کلیدي برخه د کود کوډ د ورته ټوټې د بریالي کولو توان دی.

د کوډ تکرار کولو لپاره یو شمېر لارې شتون لري (د لوبو په نوم هم پیژندل شوي). په دې الرښود کې، تاسو به وښودل شي چې څنګه د "لوپ" لوپ لیکلو لپاره.

A د لوپ لپاره د کوډ یوه ځانګړې برخه بیا وروسته بیا تکراروي. دا ګټور دي ځکه چې د قوماندې لړۍ لړۍ کولی شي تر هغه پورې چې د یو ځانګړي حالت سره مخ کیږي دوام ولري، وروسته به دوی ودروي.

په دې الرښود کې، تاسو به د BASH سکرپٹ دننه د لوپ لپاره د کارولو لپاره پنځه لارې وښودل شي.

د پیل کولو څخه وړاندې

مخکې له دې چې تاسو د لوښو مثالونو سره پیل کړئ، تاسو باید د ترمینل کړکۍ پرانیزئ او د دې مرحلو تعقیبولو ته اړتیا لرئ:

  1. د کليک سکرېپټونه وليکئ ( د mkdir په اړه نور معلومات ترلاسه کړئ )
  2. سي ډي سکرېپټونه (دا ډېری ډایرکټر سکریپټونو ته بدلوي )
  3. د نانو معاینه داخل کړئ. sh (د مثال په توګه تاسو په کار کولو بوخت یاست)
  4. سکرېپټ ثبت کړئ
  5. د وتلو لپاره خوندي کولو او CTRL + X لپاره CTRL + O کېکاږئ
  6. د بش آزموینه پرمخ بوځي (بیا، د مثال سره چې تاسو سره کار کوئ)

څنګه لوپ کړئ د لیست له لارې

#! / bin / bash
د شمیرو لپاره په 2 2 3 4 5 کې
وکړه
$ بکس وټاکئ
ترسره شوی
بهر

د "ب" "" لپاره "لوپس کارولو لپاره د BASH لاره د نورو نورو پروګرامونو او لیکلو ژبو ژبو ته" د "لپاره" لپاس "لپاره الره توپیر لري. راځئ چې سکریپټ مات کړئ ...

په BASH کې "ټول" لپاره لوپ، د ترسره کولو او ترسره کولو تر منځ بیانونه په لیست کې د هر توکي لپاره یو ځل ترسره کیږي.

په پورته مثال کې، لیست هغه څه دي کوم چې د کلمې وروسته راځي (یعنې 1 2 3 4 5).

هرکله چې لوپ تیریږي، په لیست کې راتلونکی ارزښت د "لپاره" کلمې وروسته متغیر ته ورسید. په پورته پورتنۍ برخه کې، متغیر شمیره شمیرل کیږي .

د ګوتو بیان د سکرین لپاره معلوماتو ته د ښودلو لپاره کارول کیږي.

له دې امله، دا مثال د 1 څخه تر 5 پورې لیږدوي او دوی یې د یو له لارې سکرین ته راوړي:

د پیل او پای ټکی ترمنځ څنګه لوپ کړئ؟

د پورته بېلګې په وړاندې ستونزه دا ده چې که تاسو غواړئ لوی لیست پروسس کړئ (له 1 څخه تر 500 پورې)، نو دا به عمر په لومړي ځای کې ټول ټایپونو لپاره وټاکي.

دا موږ ته دویم مثال ته راوړي چې دا معلوموي چې د پیل او پای ټکي مشخص کولو څرنګوالی:

#! / bin / bash
د {1..10} په شمېر کې
وکړه
ګونګ "$ شمېره"
ترسره شوی
بهر

دا اصول اساسا دي. د "" "کلمې وروسته لینکسونه لیست جوړوي چې په لیست کې لیږل کیږي او هر ارزښت په متغیر (لکه شمیره) کې ځای پر ځای شوی، او هرکله چې لوپ تیریږي، د ترسره کولو او ترسره کولو بیانونه ترسره شوي دي.

اصلي توپیر د لیست جوړیدو لاره ده. د ځورکي برکونه {په بنسټيزه ډول يو سلسله مني، او په دې حالت کې، سلسله، له 1 څخه تر 10 پورې وي (دوه ټکي د يوې لړۍ پېل او پای جلا کوي).

نو دا مثال د هر یو شمېره له 1 څخه تر لسو پورې دوام کوي او د سکرین شمیره په لاندې ډول ده:

ورته لوپ د دې په څیر لیکل کیدی شي، د نوبت سره یوځای لومړی مثال ته ورته وي:

د تعداد لپاره په 2 2 4 4 6 6 7 8 9 10

په رینج کې د شمیرې شمیره څنګه ودروله

پخوانۍ بېلګه څرګنده کړه چې د پیل او پای ټکی تر مینځ لوپ څه ډول، نو اوس به موږ وګورو چې څنګه په رینډ کې شمیرې وغورځوئ.

تصور وکړئ چې تاسو د 0 څخه تر 100 پورې لوپ ترلاسه کول غواړئ مګر یوازې هر لسمه شمېره ښکاره کړئ. لاندې لاریون ښیي چې څنګه باید ترسره شي:

#! / bin / bash
د {0..100..10
وکړه
ګونګ "$ شمېره"
ترسره شوی
بهر

دا اصول اساسا دي. دلته یو لیست شتون لري، متغیر، او د بیان او ترسره کولو ترمنځ یو لړ بیانونه. دا لیست داسې ښکاري لکه: {0..100..10}.

لومړی نمبر 0 دی او د پای شمېره 100 ده. دریم نمبر (10) د لیست په لیست کې د توکو شمیر دی چې دا به پریښودل شي.

لدې امله، پورته بېلګه، لاندې پیداوار ښیي:

د لوپ لپاره یو ډیر روایتی لټون

کله چې د نورو پرو رامونو د ژبو په پرتله د لوبو لپاره د لیکلو لارښود لږ عجيب دی.

په هرصورت، تاسو کولی شئ د C پروگرامنگ ژبې ته ورته ورته روش کې لوپ لپاره ولیکئ، لکه:

#! / bin / bash
لپاره ((شمېره = 1؛ شمېره <100؛ شمېره ++))
{
که (($ $ 5٪ == 0))
بیا
echo "$ شمیره د 5 لخوا تقسیم شوې ده"
ف
}
بهر

لوپ د متغیر شمیره 1 (شمیر = 1 ) ترتیبولو سره پیل کوي. لوپ به تکرار وساتي پداسې حال کې چې د یو شمېر ارزښت له 100 څخه کم وي ( شمیر <100 ). د شمیرو ارزښت د هر تکرار وروسته (د شمېره ++ ) له 1 څخه زیات کولو سره بدلون کوي.

د هر ډول تکرار له لارې د ځورونکي چرګانو ترمنځ هرڅه ترسره کیږي.

د چرګانو تر مینځ یو شمیر د ارزښت ارزښت چک کوي، دا د 5 په واسطه ویشل کیږي، او پاتې پاتې وي 0. که پاتې وي 0 نو د ویشلو وړ وي او بیا په سکرین کې ښودل کیږي.

د مثال په توګه:

که تاسو غواړئ د تکرار مرحله اندازه بدل کړئ تاسو کوالی شئ د ++ برخې برخې شمېره = نمبر 2 ، شمېره = شمیر + 5 ، یا شمېره = شمیره 10

دا به نور شمېره + = 2 یا شمېره + = 5 ته راکم شي.

عملی عملی مثال

د لوبو لپاره د شمیرې د لیست لیست څخه ډیر کار کولی شي. تاسو کولی شئ په اصل کې د نورو قوماندې محصول د لیست په توګه کارولی شئ.

لاندې مثال څرګندوي چې د MP3 څخه د WAV ته آډیو غږونه څنګه بدلوي:

#! / bin / bash

په دې مثال کې لیست هر فایل د اوسنی فولډر کې د MP3 توسیع سره دی او متغیر یو فایل دی .

د MPG قوماندې د MP3 فایل په WAV بدلوي. په هرصورت، تاسو شاید دا د خپل پیکا مدیر په کارولو سره دا نصب کړئ.