د 08 01
ابتدايي لارښود د بش لپاره - د پرتله کولو پرتله کول
د BASH سبق په تیرو برخو کې موږ مشروع بیانات ولیدل.
دا لارښود ډیر اوږد و، مګر واقعا یوازې دا وښوده چې د منطق جریان کنټرول څنګه. دا لارښود مختلف توپیرونه ښیي چې تاسو یې توپیرونه پرتله کولی شئ.
پورته انځور د دې اونۍ په لارښود کې لومړی مثال څرګندوي:
#! / bin / bash
نوم 1 = "ګیری"
نوم 2 = "بوب"که [$ $ 1 "=" $ name2 "]
بیا
د "نوم نوم"
نور
گونګ "نومونه سره سمون نه لري"
ف
په پورته پورتنۍ لڼډ کې ما دوه متغیرونه پیژندلي دي چې نوم یې نوم او 2 نوم نومول شوی دی او دوی ارزښتونه "ګیری" او "بوب" مشخص کړل. لکه څنګه چې متغیرونه د کوډ ټیکونو ترمنځ شتون لري دوی د string variables په نوم یادیږي چې د سبق سبق ته ورته ډیر اړونده وي.
ټول سکرېپټ د $ 1 $ او $ name2 ارزښت پرتله کوي او که دوی د "نوم نوم میچ" تولید کړي سره او که دوی دوی محصول ندي تولیدوي "نومونه سره سمون نه لري".
د $ نوم $ او $ نوم $ متغیر شاوخوا ارزښتونه مهم دي ځکه چې که د دوی څخه کوم ارزښت ندی راغلی نو متن به لا هم کار وکړي.
د مثال په توګه که $ $ 1 هیڅکله نه وټاکل شوی نو بیا به تاسو د "بوب" سره پرتله کول به وي. پرته له دې چې تاسو د quotation marks سره تاسو ته د "بوب" لیږل کیږئ کوم چې په واضح ډول ناکام وي.
تاسو کولی شئ د = = توضیح کولو لپاره د مساوي برابرولو تعریف ونه کړئ:
که ["$ name1"! = "$ name2"]
02 د 08
د بسته راوړونکو لارښوونو ته د BASH لپاره - د مقاومت مقاومت
په پورته بېلګه کې ازموینه ورته ورته دوه سیسټمونه پرتله کوي او پوښتنه کوي چې ایا په الفبیب کې پوښتل کیږي؟
په واضح ډول ځواب نشته.
سکرېپټ د عملیات (<) څخه کم پیژني. لکه څنګه چې د کاروونکي څخه د بیا ایستلو لپاره هم کارول کیږي تاسو باید د سلیش (\) لپاره له دې څخه لرې وساتئ د دې لپاره چې لږ څه لدې چې په پورته لینک کې زه "$ name1" \ <"$ name2" پرتله کوم.
د لږ نسبت برعکس د پام وړ نسبت لوی دی. د \ \ استعمال \ \ کارولو کارولو پرځای.
د مثال په توګه
که ["$ name1" \> "$ name2"]
03 of 08
د بسته راوړونکو لارښوونو ته د BASH لپاره - د مقاومت مقاومت
که تاسو غواړئ ازموینه وکړئ چې آیا متغیر یو ارزښت لري تاسو کولی شئ لاندې ازموینې وکاروئ:
که د [$ $ نوم 2]
پورته په لپریپټ کې ما ازموینه کړې چې ایا $ نوم 2 ارزښت ارزښت ورکړ شوی او که دا پیغام ندی "دلته هیڅ بوب نشته، هیڅکله هم یو بوټ نه لیدل کیده".
04 of 08
د بسته راوړونکو لارښوونو ته د BASH لپاره - د مقاومت مقاومت
په تیرو سلایډ کې موږ پوښلي چې آیا یو متغیر شوی دی یا نه. ځینې وختونه چې متغیر ممکن وي وټاکل شي مګر ممکن واقعیت ارزښت ونلري.
مثلا:
نوم 1 = ""
د ازموینې لپاره چې ایا متغیر ارزښت ارزښت لري یا نه (لکه د صفر اوږد) کارول - په لاندې ډول دي:
که [$z $ 1]
په پورته لینک کې ما د صفر اوږد تار ته $ نوم $ 1 ورکړ او بیا یې په کارولو سره پرتله کړه. که چیرې پیغام "ګری ماښام ته تللی وي" په هغه وخت کې صفر دی چې صفر دی.
05 د 08
د بیش لپاره د پیل پیل لارښود - د شمیرې پرتله کول
تر دې دمه ټول مقایسه د تارونو لپاره وي. د شمیرو په پرتله څه شی؟
پورته پورتنۍ لیکنه د دوو شمیرو پرتله کولو مثال بیانوي:
#! / bin / bash
a = 4
b = 5که [$ a = $ b]
بیا
"4 = 5" کیدل
نور
ګونګ "4 مساوي نه 5"
ف
د متغیر کولو لپاره یو متغیر ټاکلو لپاره په ساده ډول پرته د کوډ نښه. تاسو بیا کولی شئ دغه شمیرې د مساوي نښه سره پرتله کړئ.
که څه هم زه ترجیح کوم چې لاندې کاروونکي وکاروم چې دوه شمېره پرتله کړئ:
که [$ a -eq $ b]
06 د 08
د بیش لپاره د پیل پیل لارښود - د شمیرې پرتله کول
که تاسو غواړئ پرتله کوئ چې ایا یو شمیر د بلې شمیرې څخه کم وي تاسو کولی شئ د چلونکي (<) څخه کم کار واخلئ. لکه څنګه چې تاسو د سلیش سره لږترلږه لږترلږه د آپریټر څخه کم پریږدو. (\ \).
د شمیرو پرتله کولو یوه غوره الره د دې لاندې ځایونو څخه کار اخیستل دي:
- له کم څخه کم
- له لږ څخه مساوي یا مساوي
- له ډیرو څخه زیات
- له زیاتو څخه ډیر یا مساوي
د مثال په توګه:
که [$ a -lt $ b]
که [$ a -le $ b]
که [$ a -ge $ b]
که [$ a - gt $ b]
07 د 08
د بیش لپاره د پیل پیل لارښود - د شمیرې پرتله کول
په پای کې د دې لارښود لپاره، که تاسو غواړئ ازموینه وکړئ چې آیا دوه شمیر توپیر لري تاسو کولی شئ د یاغیانو څخه لږ او یا هم د لوی څخه کار واخلئ) <>
که [$ a <> $ b]
که [$ a -ne $ b]
08 08
پېل کونکي الرښود د BASH ته - د پرتله کولو عملیات - لنډیز
که تاسو له لاسه ورکړې وي نو د دې الرښود لومړی دری برخې تاسو کولی شئ د لاندې لینکونو په کلیک کولو سره د دوی موندلو سره:
د لارښود په راتلونکی برخه کې زه به د ریاضی پوښښ لرم.