اسکریپت نویسی شل لینوکس برای وبمسترها – قسمت۶ – دستور for

زمان مطالعه: 2 دقیقه
انتشار :
۱۴۰۰-۰۷-۱۷

اسکریپت نویسی شل لینوکس برای وبمسترها – قسمت۶ – دستور for : در قسمت قبل در مورد دستور while و حلقه تکرار توضیح داده شد.

در این قسمت با دستور for آشنا میشویم:

اسکریپت نویسی شل لینوکس برای وبمسترها – قسمت۶ - دستور for

دستور for به شما این امکان را میدهد تا در بازه عددی مشخصی حرکت کرده و در گام های مشخصی دستورات داخل حلقه را اجرا کنید.

ساختار کلی دستور for به صورت زیر است:

for VARIABLE in ۱ ۲ ۳ ۴ ۵ .. N

do

        command1

        command2

        commandN

done

متغیر variable میتواند هر متغییری باشد, مثل x
دستورات بین do و done به ازای هرکدام از عدد های ۱ تا n اجرا خواهد شد, و مقدار VARIABLE برابر عدد متناظر خواهد بود.
بر فرض اگر command1   برابر echo $VARIABLE باشد, اعداد ۱ تا N در خروجی چاپ خواهد شد,  بازه حلقه محدود به عدد نیست, میتوانید فایل ها را به جای اعداد قرار دهید:

for VARIABLE in file1 file2 file3

do

        command1 on $VARIABLE

        command2

        commandN

done
یا خروجی یک دستور دیگر را به عنوان بازه معرفی کنید:

for OUTPUT in $(Linux-Or-Unix-Command-Here)

do

        command1 on $OUTPUT

        command2 on $OUTPUT

        commandN

done
اگر بازه اعداد ثابت باشد, لازم نیست تک تک آنها را مشخص کنید, اگر بنویسید
for i in {۱..۵}
حلقه برای شما از ۱ تا ۵ اجرا خواهد شد, حتی میتوانید با فاصله ثابت در بازه بین اعداد پرش کنید»
echo "Bash version ${BASH_VERSION}..."
for i in {۰..۱۰..۲}
  do
     echo "Welcome $i times"
 done
خروجی به این صورت خواهد بود:
Bash version 4.0.33(0)-release...
Welcome 0 times
Welcome 2 times
Welcome 4 times
Welcome 6 times
Welcome 8 times
Welcome 10 times
میتوانید از شکل رایج زبان های برنامه نویسی استفاده کنید:
for (( c=1; c<=۵; c++ ))
do
   echo "Welcome $c times"
done
هر موقع بخواهید بدون ادامه حلقه از آن خارح شوید, از دستور break استفاده کنید.
در صورتی که بخواهید به آخر حلقه پرش کنید و حلقه دوباره ادامه پیدا کند از دستور continue استفاده کنید.
بازخوردها
مقالات مرتبط
2بهینه-سازی-هاست-برای-افزایش-فروش-آنلاین
بهینه سازی هاست برای افزایش فروش آنلاین
[custumexpert]
زمان مطالعه: 6 دقیقه
بهینه سازی هاست برای افزیش نمره سئو وب سایت
بهینه سازی هاست برای افزیش نمره سئو وب سایت
[custumexpert]
زمان مطالعه: 5 دقیقه