1. Ana Sayfa
  2. Server 2008

PowerShell Döngüleri – Bölüm 4


1

Döngü ne demektir? Döngü (loop) belli adımları kullanarak tekrarladığınız bir işi yüzlerce defa yapmak yerine belli kurallara bağlı oluşturduğunuz kod parçacıklarıdır. 1 ile 100 arasında bütün değerleri almak ve kodunuzda sırasıyla çağırmak istiyorsanız döngü kullanmalısınız. Veya belirli durumlar oluştuğunda belirli kodların/uyarıların çalışmasını istiyorsanız gene döngülere ihtiyacınız olacak.

IF/ELSEIF/ELSE
WHILE LOOP
DO/WHILE LOOP
FOR LOOP
FOREACH LOOP

Bu döngülerin nasıl çalıştığına bakalım ve birkaç örnekle anlatalım.

IF ELSEIF/ELSE LOOP

İf else bütün dillerde bulunan duruma bağlı çalışan bir komuttur.

$e=10
IF ($e –ge  20)
{
“$e değeri 20 den büyüktür/eşittir.”

}ELSEIF($e –ge 10)
{
“$e değeri 10 dan büyüktür/eşittir.”
}ELSE

{
“$e değeri küçük bir sayıdır.”
}

IF  (koşul)

{koşul yerine geldiğinde ne olması bekleniyor. }

ELSE

{koşul yerine gelmediğinde ne olması bekleniyor.}

ELSEIF cümlesini birden fazla şart durumu oluştuğunda kullanabilirsiniz.

WHILE LOOP

While (  koşul )  { aksiyon}

While döngüsü koşul kısmında geçen şart sağlanıyorsa True değeri döner ve { } cümlesi çalışır.Şart yerine gelmediğinde {} cümlesi çalışmaz.

$deger=0
While ($deger –lt 5)
{
$deger++
Write-host –foregroundcolor green “Sonuç: $deger”
}

Sonuç: 1
Sonuç: 2
Sonuç: 3
Sonuç: 4
Sonuç: 5

DO/WHILE LOOP

While döngüsüyle aynı işlemi yapar fakat

$i = 7; do { write-host “sayi $i”; $i +=3 } while ($i -le 21)

$i değişkenine 7 değeri atadıktan sonra do {} kısmında değeri her seferinde 3 arttıyoruz.Bu işlem while ( ) cümlesinde 21 e gelene kadar devam ediyor.

sayi 7
sayi 10
sayi 13
sayi 16
sayi 19

FOR LOOP

For döngüsü, artan işlemler için kullanılır.

For ($i=0;$i –lt 5;$i++) {$i}

For ($i değişkeni 1;i değişkeni 5 den küçük ise devam et;her seferinde değişken değerini 1 arttır) {$i değişkenini çıktı olarak ver/herhangi bir işlemi yap.}

For ($i=0;$i –lt 20);$i++)

{get-process[$i]}

Bu örnekte 0 dan 20 e kadar sayma işleminde her seferinde (getprocess)[0] bilgisini kullanarak get-process array’inde ilk 20 process i getirdik.Herhangi bir işlemi belirli sayıda yapabilirsiniz.

FOREACH LOOP

Verdiğiniz dizi değişken içerisindekileri sırasıyla işleyerek çıktı olarak verir.

$d=dir c:\*.txt

#$d değişkenine c: de bulunan txt uzantılı dosyaları gösterdik.

foreach ($i in $d ) {$i}

# foreach ( ) cümlesinde $d değişkeninde bulunan değerleri sırasıyla $i değişkenine gösteriyoruz. { } cümlesinde ise çıktısını belirledik.Siz koda bağlı olarak istediğiniz çıktıyı $i değişkeni ile

Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

Bu İçeriğe Tepkin Ne Oldu?
İlginizi Çekebilir

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

Yazar Hakkında

Yorum Yaz

Yorumlar (1)

  1. 10 sene önce

    For ($i=0;$i –lt 20);$i++) ifadesinde sanırım bir parantez eksik

Bir cevap yazın

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