از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
ایجاد حلقه بی نهایت Bash با اسکریپت های مثال
سرفصلهای مطلب
هر حلقه دارای طول عمر محدود و بسته به آن است روی حلقه، زمانی به پایان می رسد که شرط درست یا نادرست باشد. را bash حلقه بی نهایت به سادگی یک سری دستورالعمل است که به طور نامحدود حلقه می شود. هیچ شرط پایانی ندارد، شرطی که هرگز برآورده نمی شود، یا شرطی که تکرار جدیدی از حلقه را تحریک می کند. را bash حلقه های بی نهایت را می توان با حلقه های for، while و while ایجاد کرد. فقط با کمی تغییر در نحو مرسوم حلقه بی نهایت، می توانیم آن را پیاده سازی کنیم bash اسکریپت های حلقه بی نهایت در اینجا، ما ملزم به ایجاد حلقه ای هستیم که دستورات را به طور مداوم اجرا می کند تا زمانی که به اجبار از خارج از برنامه متوقف شود.
مثال شماره 1: حلقه while بی نهایت با اسکریپت های مثال
هنگامی که حلقه به طور بی نهایت بدون پایان اجرا می شود، آن حلقه را به عنوان یک حلقه بی نهایت در نظر می گیریم. هنگامی که شرط با دستور “true” مشخص می شود، حلقه while نیز می تواند به یک حلقه بی نهایت تبدیل شود. دستور true هیچ وظیفه ای را انجام نمی دهد و با موفقیت کد خروج “0” را برمی گرداند. در اینجا، ما یک را داده ایم bash اسکریپتی که در آن عملیات حلقه Infinite while انجام می شود. حلقه while دستور “true” را می گیرد که فقط برای خوانایی استفاده می شود. همچنین میتوانیم دستور null را به حلقه while رها کنیم زیرا همان فرمان true اجرا میشود. در ادامه با دستور “do” دستور “echo” را اجرا کرده ایم. حلقه while با کلمه کلیدی “انجام شد” بسته می شود.
انجام دادن
اکو «یک کار انجام دهید؛ فشار دهید [CTRL+C] برای متوقف کردن!”
انجام شده
در زمان اعدام، ما در را باز کردیم terminal و اجرا کرد bash دستور “./bash1.sh”. وقتی که bash فایل اجرا می شود، بی انتها اجرا می شود و دستور echo را بی نهایت در آن چاپ می کند terminal. توجه داشته باشید که در اینجا، برای حلقه while دستور “true” را گرفته ایم، اما دستور false را نیز می توان مشخص کرد.
مثال شماره 2: بی نهایت برای حلقه توسط نمونه اسکریپت
ساختار ساده حلقه بی نهایت با اسکریپت مثال نشان داده شده است. نه تنها حلقه while دارای ویژگی حلقه نامتناهی است، بلکه می توانیم حلقه for را نیز داشته باشیم که بی نهایت اجرا می شود. حلقه for بی نهایت نیز مانند حلقه while بی نهایت عمل می کند. در اینجا ما یک اسکریپت حلقه for بی نهایت داریم که در آن ابتدا “حلقه for” را اعلام کرده ایم که بدون هیچ شرط و پارامتری مشخص شده است. همچنین با موفقیت اجرا شد زیرا به طور پیش فرض با دستور true تنظیم شده است. پس از آن، با استفاده از کلمه کلیدی “do” دستور echo را فراخوانی کردیم. همچنین دستورات “خواب” را با دستور echo داده ایم و سپس حلقه while با دستور “انجام شد” به پایان می رسد.
انجام دادن
اکو “سلام بش شل”
خواب 1
انجام شده
اسکریپت حلقه for بی نهایت به چاپ عبارت echo در ادامه می دهد terminal که در تصویر نمایش داده شده است.
مثال شماره 3: بی نهایت تا حلقه توسط نمونه اسکریپت
راه دیگری برای ایجاد bash حلقه بینهایت با استفاده از حلقه while است. تا زمانی که شرط مورد نیاز false شود، حلقهی while از طریق بلوکی از دستورات تکرار میشود. زمانی که شرط در عبارت حلقه همیشه نادرست باشد، حلقهی while نامحدود میشود. بی نهایت تا حلقه ایجاد شده همان است که اسکریپت هایی برای حلقه های while و for بی نهایت داده ایم. حلقه تا بی نهایت فقط از کلمه کلیدی “تا” استفاده می کند. ما حلقه تا بی نهایت را ارائه کرده ایم bash اسکریپت زیر که در آن اسکریپت را با اعلان متغیر “statement” شروع می کنیم و آن را با مقدار “false” تنظیم می کنیم. در مرحله بعد، متغیر Loop_no را تعریف کرده ایم که با شمارنده 0 تنظیم شده است.
پس از آن، عبارت “until” را مشخص کردیم که عبارت “$statement” را به عنوان یک عبارت میگیرد. سپس از کلمه کلیدی echo بین دستور do و done استفاده می شود. دستور echo در اینجا تعداد چرخه های حلقه را تا زمانی که نتایج نادرست برگردانده شود چاپ می کند. در هر چرخه حلقه، تعداد افزایش می یابد. برای اجرای دوره ای اسکریپت از دستور خواب در حلقه بی نهایت استفاده کرده ایم.
بیانیه=نادرست
loop_no=0
تا بیانیه $
انجام دادن
اکو “Loop no : $loop_no”
((loop_no++))
خواب 1
انجام شده
اسکریپت حلقه تا بی نهایت روی اجرا برای نمایش بی پایان چرخه های حلقه ادامه می یابد روی را terminal.
مثال شماره 4: حلقه بی نهایت توسط اسکریپت های مثال با یک عبارت Break
گاهی لازم است از یک حلقه بی پایان خارج شویم. حلقه بی نهایت نیز می تواند با دستور break وجود داشته باشد. اگر یک معیار خاص برآورده شود، حلقه بی نهایت باید پایان یابد. وقتی از دستور break استفاده می شود، حلقه به پایان می رسد یا کنترل حرکت می کند روی به بیانیه بعدی در اینجا از دستور break در the استفاده کرده ایم bash اسکریپت ابتدا اسکریپت را با عبارت حلقه while تنظیم کرده ایم که مقدار واقعی را می گیرد. سپس با استفاده از echo modifier دستور چاپی داده ایم. پس از آن، یک دستور if داریم که تأیید می کند که آیا شرط برقرار است یا خیر. سپس، یک عبارت break داریم که حلقه while را در اینجا می شکند.
در حالی که درست است، واقعی
انجام دادن
اکو “اصابت [CTRL+C] برای خروج از حلقه…”
خواب 2
اگر [ condition ]
سپس
زنگ تفریح
فی
انجام شده
وقتی دستور echo با موفقیت اجرا شد، دستور break حلقه while را به عنوان تصویر خروجی در زیر ارائه میکند.
مثال شماره 5: حلقه بی نهایت با شرط بر اساس اسکریپت های مثال
حال، ما سناریویی را برای غلبه بر این اجرای حلقه نامحدود توسط تکنیک دیگری در نظر گرفتهایم. وقتی یک شرط به حلقه داده می شود، در جایی که آن شرط مشخص شده برآورده می شود، خاتمه می یابد. حلقه while bash اسکریپت در زیر پیاده سازی شده است که در آن ابتدا متغیر x را با مقدار 10 تنظیم کرده ایم. سپس، حلقه while را مشخص کردیم که عبارت “while [ $x -gt 5 ]” داده شده است. عبارت دارای متغیر “$x” است که باید بزرگتر از “5” باشد به عنوان عملگر “gt” بین مقدار “5” و متغیر “$x”. پس از آن، دستور echo را تعریف کردیم که در آن “$x” برای چاپ مقادیر فراخوانی می شود. دستور “x-” مقدار “x” را در هر تکرار کاهش می دهد.
ایکس=10
در حالی که [ $x –gt 5 ];
انجام دادن
اکو $x
((ایکس—))
انجام شده
اکو “نتایج خارج از حلقه”
هنگامی که مقدار “x” به مقدار “6” رسید، تصویر پایان حلقه while را نشان می دهد. در اینجا شرط نادرست می شود زیرا مقدار تکرار بعدی “5” خواهد بود که شرط while را برآورده نمی کند. علاوه بر این، میتوانیم از دستور continue که برای جلوگیری از اجرای بلوک کد استفاده میشود، استفاده کنیم.
نتیجه
راهنما به ما کمک می کند تا بسازیم bash حلقه بی نهایت که به طور مداوم به کار خود ادامه می دهد زیرا هیچ شرط پایانی به آنها داده نمی شود. را فراهم کرده ایم bash مثال اسکریپت که در آن حلقه بی نهایت را با استفاده از حلقه while، حلقه for و حلقه while ایجاد کرده ایم. پس از ایجاد حلقه بی نهایت bash به عنوان مثال، ما راه هایی را برای غلبه بر این حلقه های بی پایان مشخص کرده ایم.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-29 15:08:03