logo

لكل حلقة

ال حلقة فوريتش يُعرف أيضًا باسم أ بيان فوريش في باورشيل. ال فوريتش هي كلمة أساسية تُستخدم للتكرار على مصفوفة أو مجموعة من الكائنات، والسلاسل، والأرقام، وما إلى ذلك. بشكل أساسي، تُستخدم هذه الحلقة في تلك المواقف التي نحتاج فيها إلى العمل مع كائن واحد في كل مرة.

بناء الجملة

تعرض الكتلة التالية بناء الجملة فوريتش حلقة:

 Foreach($ in $) { Statement-1 Statement-2 Statement-N } 

في بناء الجملة هذا، هي قيمة واحدة لمتغير أو كائن تتغير مع كل تكرار. ال عبارة عن مصفوفة أو مجموعة من الأرقام والسلاسل التي تريد الوصول إليها. عند تنفيذ هذه الحلقة، يقوم PowerShell بإنشاء المتغير $ تلقائيا. هناك كتلة في بناء الجملة تحتوي على عبارات مفردة أو متعددة يتم تنفيذها لكل عنصر في المجموعة.

مخطط انسيابي لحلقة ForEach

حلقة PowerShell ForEach

أمثلة

مثال 1: يعرض المثال التالي قيمة المصفوفة التي تستخدم com.foreach حلقة:

 PS C:> $Array = 1,2,3,4,5,6,7,8,9,10 PS C:> foreach ($number in $Array) >> { >> echo $number >> } 

انتاج:

 1 2 3 4 5 6 7 8 9 10 

في هذا المثال، مصفوفة $صفيف يتم إنشاؤه وتهيئته باستخدام القيم الصحيحة 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 . في المرة الأولى التي يتم فيها تنفيذ عبارة Foreach، تقوم بتعيين قيمة عددية ' 1 'من مصفوفة إلى رقم $ عامل. بعد ذلك، يستخدم الأمر echo cmdlet لعرض الرقم 1. وفي المرة التالية خلال الحلقة، يتم تعيين $number على 2، وهكذا. بعد أن تعرض حلقة Foreach الرقم 10، ينهي PowerShell الحلقة.

مثال 2: يوضح المثال التالي ملفات المجلد الذي يستخدم com.foreach حلقة:

 PS C:> foreach($file in get-childitem) >> { >> echo $file >> } 

انتاج:

 Directory: C: Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 23-02-2019 13:14 found.000 d----- 28-12-2017 19:44 Intel d----- 04-07-2018 10:53 Office 2013 Pro Plus d----- 15-09-2018 13:03 PerfLogs d----- 09-10-2019 11:20 powershell d-r--- 22-08-2019 15:22 Program Files d-r--- 03-10-2019 10:23 Program Files (x86) 

في هذا المثال، com.foreach يعرض البيان قائمة العناصر (الملفات) التي يتم إرجاعها بواسطة get-childitem cmdlet.

مثال 3: يعرض المثال التالي قيمة مصفوفة تستخدم حلقة foreach:

 PS C:> $fruits= 'apple', 'orange', 'guava', 'pomegranate', 'Mango' PS C:> foreach ($item in $fruits) >> { >> echo $item >> } 

انتاج:

 apple orange guava pomegranate Mango