PowerShell

PowerShell Foreach Döngüsü

PowerShell Döngüler, PowerShell Foreach Döngüsü Kullanımı, PowerShell Foreach Loop, PowerShell Foreach Döngüsü Örnekleri

PowerShell Foreach Döngüsü

PowerShell Foreach döngüsü, Foreach ifadesi olarak da bilinir. Foreach; bir dizi veya nesne, string, integer vb. tiplerden oluşan bir koleksiyonun üzerinde döngü oluşturmak için kullanılan anahtar kelimedir. Temel olarak, bu döngü bir kerede bir nesneyle çalışmamız gereken durumlarda kullanılır.

Bir programlama dilinde döngü, değerlendirilecek bir koşulun sonucuna bağlı olarak bir ifadeyi veya bir dizi ifadeyi yürütmenin bir yoludur. “Do Until” haricindeki döngülerde kod bloklarının çalıştırılması için sonuçların “True” olması gerekir. Foreach döngüsü, bir koleksiyon içindeki öğeleri alabilmek için kullanılır. Koleksiyon bir dizi veya liste olabilir. Dizide bulunan her öğe için yürütülür.

ForEach Döngüsü Sözdizimi

Aşağıdaki blokta Foreach döngüsünün sözdizimi göstermektedir. Foreach sözdiziminde “$<Öğe>“, bir değişkenin veya nesnenin her bir yinelemede değişen tek bir değeridir. “$<Koleksiyon>” erişmek istediğiniz bir dizi veya string, integer vb tipten oluşan bir koleksiyondur. Bu döngü yürütüldüğünde, PowerShell “$<Öğe>” değişkenini otomatik olarak oluşturur. Sözdiziminde, bir koleksiyondaki her öğe için yürütülen tek veya birden çok ifade içeren bir blok vardır. 

Foreach($<Öğe> in $<Koleksiyon>) 
{ 
    Kod-1 
    Kod-2 
    Kod-N 
}

Foreach döngüsünde, döngünün ne kadar döneceği dizi yada koleksiyonun eleman sayısı kadar olacak şekilde PowerShell tarafından otomatik hesaplanacak ve çalışacaktır. Döngü tanımlanırken belirtilen dizinin her elemanı için, döngü bir kez dönecektir. Her adımda sıradaki dizi elemanı, belirtilen değişkene yani $<Öğe>alınacaktır.

PowerShell ForEach Döngüsü Akış Şeması

PowerShell Foreach Döngüsü
PowerShell Foreach Döngüsü

Örnekler

Örnek 1:

Aşağıdaki örnekte, foreach döngüsü ile bir dizinin elemanlarının görüntülenmesi gösterilmiştir:

$Sayilar= 1,2,3,4,5,6,7,8,9,10
foreach ($Sayi in $Sayilar)
{
    echo $Sayi
}

Çıktı:

1
2
3
4
5
6
7
8
9
10

Bu örnekte, “1, 2, 3, 4, 5, 6, 7, 8, 9, 10” tam sayı değerlerini içeren “$Sayilar” dizisi oluşturulur. Foreach ifadesi ilk kez çalıştırıldığında “$Sayi” değişkenine dizinin ilk değeri olan “1” değeri atanır. Ardından, “1” sayısını görüntülemek için “echo” cmdlet’i kullanır. Döngüde bir sonraki seferde “$Sayi” değişkeni değeri “2” olarak atanır ve bu şekilde devam eder. Foreach döngüsü “10” sayısını görüntüledikten sonra PowerShell döngüyü sonlandırır.

Örnek 2:

Aşağıdaki örnekte foreach döngüsü kullanılarak bir klasörün içindeki dosyaların listesi görüntülenir:

foreach($dosyalar in get-childitem)  
{  
    echo $dosyalar  
}

Çıktı:

    Directory: C:\


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       23.01.2020     14:47                aktifdizin
d-----       19.03.2019     07:52                PerfLogs
d-r---       24.01.2020     17:07                Program Files
d-r---        4.12.2019     11:52                Program Files (x86)
d-----       15.11.2019     15:07                Sources
d-r---       15.11.2019     15:15                Users
d-----       24.01.2020     08:31                Windows

Bu örnekte foreach ifadesi, “Get-ChildItem” cmdlet’i tarafından döndürülen öğelerin (dosyaların) listesini gösterir.

Örnek 3:

Aşağıdaki örnekte foreach döngüsü kullanarak bir dizinin değerlerini görüntülemek gösterilmiştir:

$sebzeler= "Pırasa", "Ispanak", "Kabak", "Fasulye", "Nohut"  
foreach ($sebze in $sebzeler)  
{  
    echo $sebze  
}

Çıktı:

Pırasa
Ispanak
Kabak
Fasulye
Nohut

PowerShell Foreach Döngüsü

Makalesini okuduğunuz için teşekkür ederiz. Bu konuda bir kaç örnek daha “PowerShell Diziler” makalesinde görebilirsiniz. PowerShell hakkında daha fazla bilgi için Microsoft sitesi de ziyaret edilebilir. Soru ve görüşlerinizi aşağıdaki form ile bize iletebilirsiniz.

Daha Fazla Göster

Ahmet Elibol

Üniversite eğitimini Kimya ve İşletme bölümlerinde tamamlayan Ahmet Elibol, yüksek lisans eğitimini de İşletme (Master of Business Administration - MBA) üzerinde tamamlamıştır. 1999 yılından bu yana bilişim sektöründe bulunmaktadır ve şu anda Rönesans Holding şirketinde CIO (Chief Information Officer) pozisyonunda görev yapmaktadır.  Ahmet Elibol, profesyonel kariyerine aldığı pascal ve delphi ile yazılım mühendisliği eğitimiyle başlamıştır. 2004 yılından sonra ilgi ve uzmanlık alanlarını Microsoft Sunucu Sistemleri, Sistem Programlama ve Bilgi Güvenliği konularında güncellemiştir. Yazar 4 yıl kadar bir akademide Sistem Mühendisliği eğitimleri vermiştir. Yazar hobi amaçlı programlama, yapay zeka, makine öğrenmesi, yapay sinir ağları, görüntü işleme ve nesnelerin interneti konularında çalışmaktadır. İngilizce, Rusça dillerini bilen Ahmet Elibol MCT, MCITP, MCTS, MCSE, MCSA vb. uzmanlık sertifikalarına sahiptir ve Bilgisayar Mühendisliği yüksek lisansına devam etmektedir.

İlgili Makaleler

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu