از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش استفاده از حلقه for در دستور awk
سرفصلهای مطلب
حلقه برای اجرای چندباره برخی از دستورات استفاده می شود. تکرار حلقه بر اساس روی شرایط پایان یا تعداد عناصر آرایه. سه نوع حلقه توسط هر زبان برنامه نویسی پشتیبانی می شود. حلقه For یکی از آنهاست. حلقه for را می توان به دو روش اعلام کرد. حلقه Simple for شامل سه بخش است. و یکی دیگر از حلقه های for حلقه for-in است که برای تکرار هر لیستی از داده ها یا آرایه ها استفاده می شود. این آموزش استفاده از این دو نوع حلقه را در دستور awk با استفاده از مثال های مختلف نشان می دهد.
نحو:
- برای اعلام حلقه:
بیانیه
}
قسمت اول برای مقداردهی اولیه متغیر برای شروع استفاده می شود برای حلقه قسمت دوم شامل شرط پایان برای کنترل تکرار حلقه است و حلقه تا زمانی که شرط درست باشد ادامه خواهد داشت. قسمت آخر بر اساس متغیر مقداردهی اولیه را افزایش یا کاهش می دهد روی بخش اول.
- برای اعلامیه
بیانیه
}
برای در حلقه برای انجام کارهایی که تعداد تکرار حلقه ثابت نیست استفاده می شود. برای در حلقه عمدتاً برای تجزیه یک آرایه یا لیستی از داده ها استفاده می شود. حلقه هر داده را از آرایه یا لیست می خواند و مقدار را در یک متغیر در هر تکرار ذخیره می کند.
مثال-1: استفاده از حلقه ساده for
یک حلقه for ساده در اسکریپت زیر استفاده شده است. اینجا، پیشخوان متغیر با 10 مقداردهی اولیه می شود و زمانی که مقدار از به پایان می رسد حلقه پایان می یابد پیشخوان کمتر از 5 است. اسکریپت خواهد شد print را پیشخوان مقادیر از 10 تا 5. دستور را از terminal.
print “Running for “,counter, “time.”,”\n”; }’
خروجی:
پس از اجرای دستور خروجی زیر ظاهر می شود.
مثال-2: استفاده از حلقه for-in برای خواندن یک آرایه
آرایه ای به نام Customer در اسکریپت زیر که در آن مشتری است، اعلام شده است شناسه به عنوان شاخص آرایه و مشتری تنظیم می شود نام به عنوان مقدار آرایه تنظیم شده است. برای در حلقه در اینجا برای تکرار هر شاخص از آرایه و استفاده می شود print نام مشتری اسکریپت را از قسمت اجرا کنید terminal.
مشتری[“8953”] = «الا بینته نظیر»;
مشتری[“3455”] = “بروس هایسلوپ”;
مشتری[“6335”] = “ایزابلا”;
}END { برای (من در مشتری)
print “نام “، i،” “مشتری است[i]
}’
خروجی:
پس از اجرای اسکریپت خروجی زیر ظاهر می شود.
مثال-3: استفاده از حلقه تو در تو
هنگامی که یک حلقه for تحت حلقه for دیگری اعلام می شود، حلقه for تودرتو نامیده می شود. حلقه بیرونی که در این اسکریپت استفاده می شود 2 بار و حلقه داخلی 3 بار تکرار می شود. بنابراین print دستور برای (2X3=6) 6 بار اجرا خواهد شد. اسکریپت را از قسمت اجرا کنید terminal.
برای (j=1؛ j<=3؛ j++)
print “تکرار ردیف “, i,” و ستون “, j,”\n”;}’
خروجی:
پس از اجرای اسکریپت خروجی زیر ظاهر می شود.
مثال-4: استفاده از حلقه for با دستور break
زنگ تفریح دستور در هر حلقه ای برای خاتمه دادن به حلقه قبل از رسیدن به شرط پایان بر اساس استفاده می شود روی شرایط خاص در اسکریپت زیر، حلقه for از 3 شروع می شود و زمانی که مقدار آن به پایان می رسد من بزرگتر از 20 است. اما زمانی که مقدار من برابر با متغیر خواهد بود تعداد سپس شرط if درست خواهد بود و حلقه برای the خاتمه می یابد زنگ تفریح بیانیه.
if( i == num) break;
دیگر
print “مقدار فعلی i =”,i ,”\n”;}}’
خروجی:
در اینجا، اگر شرط برای چهار تکرار نادرست است زمانی که مقدار من 3،4،5 و 6 است. بنابراین، خروجی زیر برای چهار تکرار چاپ می شود.
مثال-5: استفاده از حلقه for با دستور continue
دستور Continue در هر حلقه ای برای حذف هر دستوری استفاده می شود روی هر شرایط خاصی آرایه ای به نام تولید – محصول در اسکریپت زیر اعلام شده است. برای در حلقه برای تکرار آرایه و بررسی هر مقدار با ” استفاده می شود.نرم افزار آفیس“. اگر مقدار مطابقت داشته باشد، یک پیام در دسترس نیست print با حذف پیام موجود برای بیانیه ادامه، در غیر این صورت پیام در دسترس نیست print. اسکریپت را از قسمت اجرا کنید terminal.
تولید – محصول[“1002″]”نرم افزار آفیس”;
تولید – محصول[“1003″]”نرم افزار نقشه کشی”;
تولید – محصول[“1004″]”HDD”;
تولید – محصول[“1005″]=”DVD”;} END{ برای (i در محصول) {
اگر (محصول[i] == “نرم افزار آفیس”) {
print تولید – محصول[i]”در دسترس نیست\n”؛
ادامه هید؛
}
print تولید – محصول[i]” موجود است” ,”\n”;}}’
خروجی:
پس از اجرای اسکریپت خروجی زیر ظاهر می شود.
مثال-6: استفاده از حلقه for در فایل awk
یک فایل متنی با نام ایجاد کنید sales.txt و برای تمرین این مثال مطالب زیر را اضافه کنید.
sales.txt
2016 80000
2017 83000
2018 86000
2019 90000
یک فایل awk با نام ایجاد کنید cal_sal.awk با اسکریپت زیر کل مبلغ فروش فایل را محاسبه کنید sales.txt. فیلد دوم حاوی مبلغ فروش سالانه در فایل است sales.txt. در فیلمنامه، فروش آرایه تمام مقادیر فیلد دوم و را ذخیره می کند مجموع متغیر با 0 مقداردهی اولیه می شود تا همه مقادیر را اضافه کند حراجی آرایه. بعد، برای در حلقه برای تکرار هر عنصر استفاده می شود فروش آرایه کنید و مقدار را با مجموع متغیر. در آخر، print بیانیه استفاده می شود print ارزش مجموع متغیر برای نمایش مبلغ کل فروش.
cal_sal.awk
حراجی[i++]=2 دلار;
مجموع=0;
}
پایان{
برای (من که در حراجی)
{
مجموع=مجموع+فروش[i];
}
print “مبلغ کل فروش =” مجموع;
}
دستور زیر را برای اجرای اسکریپت فایل cal_sal.awk اجرا کنید.
خروجی:
5 رکورد در sales.txt فایل و مجموع مبلغ فروش 409000 است که پس از اجرای اسکریپت چاپ می شود.
نتیجه:
در این آموزش سعی شده است کاربردهای مختلف حلقه for در دستور awk توضیح داده شود. امیدوارم خواننده ایده روشنی پیدا کند روی از حلقه for در اسکریپت awk استفاده می کند و می تواند از حلقه for به درستی در برنامه نویسی awk استفاده کند.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-31 20:03:03