PowerShell

PowerShell Karşılaştırma Operatörleri

PowerShell Comparison Operators, Eşitlik (Equality), Eşleştirme (Matching), Kapsama (Containment), Değiştirme (Replacement), Tip Karşılaştırma (Type Comparison) Gibi PowerShell Karşılaştırma Operatörleri

PowerShell Karşılaştırma Operatörleri

PowerShell karşılaştırma operatörleri, PowerShell’de değerleri karşılaştırmak için kullanılır. Varsayılan olarak, tüm karşılaştırma operatörleri büyük/küçük harfe duyarlıdır. Bu operatörler veri ve bilgileri bulmamıza, test etmemize, karşılaştırmamıza ve değiştirmemize yardımcı olur.

PowerShell Karşılaştırma Operatörleri:

  1. Eşitlik Operatörleri (Equality Operators)
  2. Eşleştirme Operatörleri (Matching Operators)
  3. Kapsama Operatörleri (Containment Operators)
  4. Değiştirme Operatörleri (Replacement Operators)
  5. Tip Karşılaştırma Operatörleri (Type Comparison Operators)

1. Eşitlik Operatörleri (Equality Operators)

PowerShell eşitlik operatörleri, iki değerin eşitliğini denetleyen ve bir değerin diğer değerden daha büyük veya daha küçük olup olmadığını denetleyen operatörlerdir.

PowerShell eşitlik karşılaştırma operatörlerinin listesi aşağıdadır:

  • -eq (Equal – Eşit)
  • -ne (Not Equal – Eşit Değil)
  • -gt (Greater than – Büyüktür)
  • -ge (Greater than or Equal to – Büyük Eşittir)
  • -lt (Less than – Küçüktür)
  • -le (Less than or Equal to – Küçük Eşittir)

-eq (Equal – Eşit)

Değerler eşitse, bu operatör Boolean tipinde True, aksi takdirde False değerini döndürür.

Örnek:

Aşağıdaki örnekte -eq (equal – eşit) operatörünün nasıl kullanılacağı açıklanmaktadır:

$a=10  
$b=10  
($a -eq $b)  

Bu örnekteki son komut, her iki değişkenin değeri aynı olduğundan Boolean olarak True değerini görüntüler.

-ne (Not Equal – Eşit Değil)

Değerler eşit değilse, bu operatör Boolean değerini True, aksi takdirde False değerini döndürür.

Örnek:

Aşağıdaki örnekte -ne (Not Equal – Eşit Değil) operatörünün nasıl kullanılacağı açıklanmaktadır:

$a=10  
$b=10  
($a -ne $b)

Bu örnekteki son komut, her iki değişkenin değeri aynı olduğundan Boolean değeri olarak False değerini görüntüler.

-gt (Greater than – Büyüktür)

Operatörün sol tarafındaki bir değişkenin değeri, operatörün sağ tarafındaki bir değişkenin değerinden büyükse, bu operatör True Boolean değerini, aksi takdirde False değerini döndürür.

Örnek:

Aşağıdaki örnekte -gt (Greater than – Büyüktür) operatörünün nasıl kullanılacağı açıklanmaktadır:

$a=20  
$b=10  
($a -gt $b)

$a değişkeninin değeri $b’den büyük olduğu için bu örnekteki son komut True Boolean değerini görüntüler.

-ge (Greater than or Equal to – Büyük Eşittir)

Operatörün sol tarafındaki değişkenin değeri, operatörün sağ tarafındaki değişkenin değerinden büyük veya ona eşitse, bu operatör True Boolean değerini, aksi takdirde False değerini döndürür.

Örnek:

Aşağıdaki örnekte -ge (Greater than or Equal to – Büyük Eşittir) operatörünün nasıl kullanılacağı açıklanmaktadır:

$a=10  
$b=10  
($a -ge $b)

Bu örnekteki son komut, $a ve $b değişkenlerinin değerleri aynı olduğundan, True Boolean değerini görüntüler.

-lt (Less than – Küçüktür)

Operatörün sol tarafındaki değişkenin değeri, operatörün sağ tarafındaki değişkenin değerinden küçükse, bu operatör True Boolean değerini, aksi takdirde False değerini döndürür.

Örnek:

Aşağıdaki örnekte -lt (Less than – küçüktür) operatörünün nasıl kullanılacağı açıklanmaktadır:

$a=10  
$b=20  
($a -lt $b)

$a değişkeninin değeri $b’den küçük olduğu için bu örnekteki son komut True Boolean değerini görüntüler.

-le (Less than or Equal to – Küçük Eşittir)

Operatörün sol tarafındaki değişkenin değeri, operatörün sağ tarafındaki değişkenin değerinden küçük veya ona eşitse, bu operatör True Boolean değerini, aksi takdirde False değerini döndürür.

Örnek:

Aşağıdaki örnekte -le (Less than or Equal to – Küçük Eşittir) operatörünün nasıl kullanılacağı açıklanmaktadır:

$a=10  
$b=10  
($a -le $b)

Bu örnekteki son komut, $a ve $b değişkenlerinin değerleri aynı olduğundan, True Boolean değerini görüntüler.

2. Eşleştirme Operatörleri (Matching Operators)

PowerShell eşleştirme operatörleri, bir eşleşme bulmak için string ifadeleri normal veya joker karakterler kullanarak karşılaştıran işleçlerdir.

PowerShell eşleştirme operatörleri listesi aşağıdadır:

  • -like
  • -notlike
  • -match
  • -notmatch

-like

-like operatörü, string ifadeler joker karakterler kullanılarak eşleşirse True Boolean değerini döndürür.

Örnekler:

Aşağıdaki örneklerde -like operatörünün nasıl kullanılacağı açıklanmaktadır:

Örnek 1:
$a="PowerShell"  
$b="PowerShell"  
$a -like $b

Her iki ifade de aynı olduğundan, Örnek 1’deki son komut True değerini döndürür.

Örnek 2:
$a="PowerShell"  
$b="*Shell"  
$a -like $b

Bu örnekteki son komut, “Shell” dizesi $a değişkeninde bulunduğu için True değerini döndürür.

-notlike

-notlike operatörü, string ifadeler joker karakterler kullanılarak eşleşmezse True Boolean değerini döndürür.

Örnekler:

Aşağıdaki örneklerde -notlike operatörünün nasıl kullanılacağı açıklanmaktadır:

Örnek 1:
$a="PowerShell"  
$b="windows"  
$a -notlike $b

Yukarıdaki örnekteki son komut, ifadeler eşleşmediği için True değerini döndürür.

Örnek 2:
$a="PowerShell"  
$b="*Shell"  
$a -notlike $b

“Shell” ifadesi $a değişkeninde bulunduğundan bu örnekteki son komut False değerini döndürür.

-match

-match operatörü, ifadeler joker karakterler kullanılarak eşleşirse True değerini döndürür. Girdi bir listeyse, -match operatörü listenin eşleşen üyelerini döndürür.

Örnek:
$aylar="Ocak", "Şubat", "Mart", "Nisan"   
$ara="Şub"  
$aylar -match $ara

Bu örnekteki son komut “Şubat” ifadesini döndürür.

-notmatch

-notmatch operatörü, ifadeler joker karakterler kullanılarak eşleşmediğinde True Boolean değerini döndürür.

Örnekler:

Aşağıdaki örneklerde -notmatch operatörünün nasıl kullanılacağı açıklanmaktadır:

Örnek 1:
$a="PowerShell"  
$b="ell"  
$a -notmatch $b

Bu örnekteki son komut False değerini döndürür, çünkü $a değişkeni içinde “ell” ifadesi bulunur.

Örnek 2:
$a="January", "February", "March", "April"   
$b="Feb"  
$a -notmatch $b

Bu örnekteki son komut aşağıdaki sonucu döndürür:

January
March
April

3. Kapsama Operatörleri (Containment Operators)

PowerShell kapsama operatörleri, eşitlik operatörlerine benzer. Bu operatörler her zaman bir Boolean değer döndürür. Operatörün sağ tarafındaki değer operatörün sol tarafındaki değerler kümesinde bulunduğunda True, aksi takdirde False değerini döndürür.

PowerShell kapsama operatörlerinin listesi aşağıdadır:

  • -contains
  • -notcontains
  • -in
  • -notin

-contains

Operatörün sağ tarafındaki değer, operatörün sol tarafındaki değerler kümesinde mevcut olduğunda, bu operatör True değerini döndürür.

Örnek:
$a="January", "February", "March", "April"   
$b="March"  
$a -contains $b

Bu örnekteki son komut True değerini döndürür.

-notcontains

Operatörün sağ tarafındaki değer, operatörün sol tarafındaki değerler kümesinde mevcut değilse, bu operatör True değerini döndürür.

Örnek:
$a="January", "February", "March", "April"   
$b="March"  
$a -notcontains $b

Bu örnekteki son komut False değerini döndürür.

-in

Operatörün sol tarafındaki değer, operatörün sağ tarafındaki değerler kümesinde mevcut olduğunda, bu operatör True değerini döndürür.

Örnek:
$b="March"  
$b="February", "March", "April"   
$a -in $b

Bu örnekteki son komut True değerini döndürür.

-notin

Operatörün sol tarafındaki değer, operatörün sağ tarafındaki değerler kümesinde mevcut değilse, bu operatör True değerini döndürür.

Örnek:
$b="March"  
$b="February", "March", "April"   
$a -notin $b

Bu örnekteki son komut False değerini döndürür.

4. Değiştirme Operatörleri (Replacement Operators)

PowerShell değiştirme operatörü (-replace), değerin tümünü veya bir kısmını normal bir ifade kullanarak belirtilen değerle değiştiren bir operatördür.

Aşağıdaki ifade -replace operatörünün sözdizimidir:

<giriş ifadesi> -replace <orijinal ifade>, <yerine geçecek ifade>

Bu sözdizimi orijinal ve yerine geçecek ifadeler olmak üzere iki argüman kullanır. Bu ifadeler yukarıdaki şekilde virgülle ayrılır.

Örnek:
$a="Windows ve Linux İşletim Sistemi"  
$a -replace "Linux" , "MacOS"

Bu örnekteki ikinci komut aşağıdaki çıktıyı verir:

Windows ve MacOS İşletim Sistemi

5. Tip Karşılaştırma Operatörleri (Type Comparison Operators)

PowerShell tip karşılaştırma operatörleri, operatörün sol tarafındaki değer bir Microsoft .NET tipi ise True değeri döndüren operatörlerdir. Aksi takdirde False değerini döndürür.

PowerShell iki tip karşılaştırma operatörünü destekler:

  • -is
  • -isnot

-is

Operatörün sol tarafındaki değer bir Microsoft .NET tipi olarak belirtildiğinde, bu operatör True değerini döndürür.

Örnek:
$a=1  
$a -is [int]

Örnekteki ikinci komut, True değerini verir. Çünkü $a değişkeninin değeri integer tipindedir.

-isnot

-isnot operatörü, operatörün sol tarafındaki değer bir Microsoft .NET türü olarak belirtilmediğinde, True değerini döndürür.

Örnek:
$a="1"  
$a -isnot [int]

Örnekteki ikinci komut, $a değişkeninin değeri bir string olduğundan, True değerini görüntüler.

PowerShell Karşılaştırma Operatörleri

Joker karakter nedir?

Joker karakter “*” şeklinde kullanılır. Örneğin, “*Shell” ifadesi, “başlangıcı herhangi bir ifade olabilir ancak bitimi “Shell” olmalıdır” şeklinde yorumlanır. Bu yüzden “PowerShell” ifadesi ile eşleşir. Örneğin “*aktifdizin*” ifadesi “https://aktifdizin.com” ifadesi ile eşleşir.


PowerShell Karşılaştırma Operatörleri

Makalesini okuduğunuz için teşekkür ederiz. Eğer PowerShell Operatörleri konusuyla ilgileniyorsanız,  “PowerShell Atama Operatörleri” makalesi de ilginizi çekebilir. PowerShell ile ilgili daha fazla bilgi için Microsoft sitesini ziyaret edebilirsiniz.

Soru ve önerileriniz için aşağıdaki formu kullanarak bize ulaşabilirsiniz.

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.  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 de 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 yanıt yazın

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

Başa dön tuşu