Where-Object

Bir koleksiyondaki nesneleri özellik değerlerine göre seçer.

Sözdizimi

Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     [-EQ]
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-FilterScript] <ScriptBlock>
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -Match
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CEQ
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -NE
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CNE
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -GT
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CGT
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -LT
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CLT
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -GE
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CGE
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -LE
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CLE
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -Like
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CLike
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -NotLike
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CNotLike
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CMatch
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -NotMatch
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CNotMatch
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -Contains
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CContains
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -NotContains
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CNotContains
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -In
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CIn
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -NotIn
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -CNotIn
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -Is
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     [[-Value] <Object>]
     -IsNot
     [<CommonParameters>]
Where-Object
     [-InputObject <PSObject>]
     [-Property] <String>
     -Not
     [<CommonParameters>]

Description

cmdlet'i Where-Object , ona geçirilen nesnelerin koleksiyonundan belirli özellik değerlerine sahip nesneleri seçer. Örneğin, cmdlet'ini Where-Object kullanarak belirli bir tarihten sonra oluşturulan dosyaları, belirli bir kimliği olan olayları veya belirli bir Windows sürümünü kullanan bilgisayarları seçebilirsiniz.

Windows PowerShell 3.0'dan başlayarak, komut Where-Object oluşturmanın iki farklı yolu vardır.

  • Betik bloğu. Özellik adını, karşılaştırma işlecini ve özellik değerini belirtmek için bir betik bloğu kullanabilirsiniz. Where-Object betik bloğu deyiminin true olduğu tüm nesneleri döndürür.

    Örneğin, aşağıdaki komut öncelik sınıfındaki Normal işlemleri alır, yani PriorityClass özelliğinin değerinin eşit olduğu işlemleri işlerNormal.

    Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}

    Tüm PowerShell karşılaştırma işleçleri betik bloğu biçiminde geçerlidir. Daha fazla bilgi için bkz . about_Comparison_Operators.

  • Karşılaştırma deyimi. Ayrıca, daha çok doğal dile benzeyen bir karşılaştırma deyimi de yazabilirsiniz. Karşılaştırma deyimleri Windows PowerShell 3.0'da kullanıma sunulmuştur.

    Örneğin, aşağıdaki komutlar öncelik sınıfı Normalolan işlemleri de alır. Bu komutlar eşdeğerdir ve bunları birbirinin yerine kullanabilirsiniz.

    Get-Process | Where-Object -Property PriorityClass -EQ -Value "Normal"

    Get-Process | Where-Object PriorityClass -EQ "Normal"

    Windows PowerShell 3.0'dan başlayarak, Where-Object bir komutta Where-Object karşılaştırma işleçlerini parametre olarak ekler. Belirtilmediği sürece, tüm işleçler büyük/küçük harfe duyarlı değildir. Windows PowerShell 3.0'ın öncesinde, PowerShell dilindeki karşılaştırma işleçleri yalnızca betik bloklarında kullanılabilirdi.

için Where-Objecttek bir Özellik sağladığınızda, cmdlet özelliğin değerini boole ifadesi olarak değerlendirir. Özelliğin Uzunluğu değerinin sıfır olmadığı durumlarda ifade olarak $truedeğerlendirilir. Örneğin: ('hi', '', 'there') | Where-Object Length

Önceki örnek işlevsel olarak aşağıdakilere eşdeğerdir:

  • ('hi', '', 'there') | Where-Object Length -GT 0
  • ('hi', '', 'there') | Where-Object { $_.Length -gt 0 }

PowerShell'in boole değerlerini nasıl değerlendirdiğini hakkında daha fazla bilgi için bkz . about_Booleans.

Örnekler

Örnek 1: Durdurulan hizmetleri alma

Bu komutlar durdurulan tüm hizmetlerin listesini alır. $_ Otomatik değişken, cmdlet'ine Where-Object geçirilen her nesneyi temsil eder.

İlk komut betik bloğu biçimini, ikinci komut ise karşılaştırma deyimi biçimini kullanır. Komutlar hizmetleri aynı şekilde filtreler ve aynı çıkışı döndürür. Yalnızca söz dizimi farklıdır.

Get-Service | Where-Object { $_.Status -eq "Stopped" }
Get-Service | Where-Object Status -EQ "Stopped"

Örnek 2: Çalışma kümesini temel alan işlemleri alma

Bu komutlar, 250 megabayttan (MB) büyük bir çalışma kümesine sahip işlemleri listeler. Komutlar işlemleri aynı şekilde filtreler ve aynı çıkışı döndürür. Yalnızca söz dizimi farklıdır.

Get-Process | Where-Object { $_.WorkingSet -GT 250MB }
Get-Process | Where-Object WorkingSet -GT 250MB

Örnek 3: İşlem adına göre işlemleri alma

Bu komutlar, harfiyle pbaşlayan bir ProcessName özellik değerine sahip olan işlemleri alır. Match işleci normal ifade eşleşmelerini kullanmanıza olanak tanır.

Komutlar işlemleri aynı şekilde filtreler ve aynı çıkışı döndürür. Yalnızca söz dizimi farklıdır.

Get-Process | Where-Object { $_.ProcessName -Match "^p.*" }
Get-Process | Where-Object ProcessName -Match "^p.*"

Örnek 4: Karşılaştırma deyimi biçimini kullanma

Bu örnekte, cmdlet'in yeni karşılaştırma deyimi biçiminin Where-Object nasıl kullanılacağı gösterilmektedir.

İlk komut karşılaştırma deyimi biçimini kullanır. Herhangi bir diğer ad kullanmaz ve her parametrenin adını içerir.

İkinci komut, karşılaştırma komut biçiminin daha doğal kullanımıdır. komut, cmdlet adı için Where-Object diğer adın yerini alır where ve tüm isteğe bağlı parametre adlarını atlar.

Komutlar işlemleri aynı şekilde filtreler ve aynı çıkışı döndürür. Yalnızca söz dizimi farklıdır.

Get-Process | Where-Object -Property Handles -GE -Value 1000
Get-Process | where Handles -GE 1000

Örnek 5: Özelliklere göre komutları alma

Bu örnek, true veya false olan veya belirtilen özellik için herhangi bir değere sahip öğeleri döndüren komutların nasıl yazıldığını gösterir. Her örnek, komut için hem betik bloğunu hem de karşılaştırma deyimi biçimlerini gösterir.

Komutlar girişlerini aynı şekilde filtreler ve aynı çıkışı döndürür. Yalnızca söz dizimi farklıdır.

# Use Where-Object to get commands that have any value for the OutputType
# property of the command. This omits commands that do not have an OutputType
# property and those that have an OutputType property, but no property value.
Get-Command | Where-Object OutputType
Get-Command | Where-Object { $_.OutputType }

# Use Where-Object to get objects that are containers. This gets objects that
# have the **PSIsContainer** property with a value of $True and excludes all
# others.
Get-ChildItem | Where-Object PSIsContainer
Get-ChildItem | Where-Object { $_.PSIsContainer }

# Finally, use the -not operator (!) to get objects that are not containers.
# This gets objects that do have the **PSIsContainer** property and those
# that have a value of $False for the **PSIsContainer** property.
Get-ChildItem | Where-Object -Not PSIsContainer
Get-ChildItem | Where-Object { !$_.PSIsContainer }

Örnek 6: Birden çok koşul kullanma

Get-Module -ListAvailable | Where-Object {
    ($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri
}

Bu örnekte, birden çok koşula sahip bir Where-Object komutun nasıl oluşturulacağı gösterilmektedir.

Bu komut Güncelleştirilebilir Yardım özelliğini destekleyen çekirdek olmayan modülleri alır. komut, bilgisayardaki tüm modülleri almak için cmdlet'in Get-Module ListAvailable parametresini kullanır. İşlem hattı işleci (|), modülleri cmdlet'ine Where-Object gönderir. Bu, adları veya PSile Microsoft başlamayan modülleri alır ve PowerShell'e modülün güncelleştirilmiş yardım dosyalarını nerede bulacağını bildiren HelpInfoURI özelliği için bir değere sahiptir. Mantıksal -and işleç karşılaştırma deyimlerini bağlar.

Örnek, betik bloğu komut biçimini kullanır. gibi mantıksal işleçler -and-or-not yalnızca betik bloklarında geçerlidir. Bunları bir Where-Object komutun karşılaştırma deyimi biçiminde kullanamazsınız.

Parametreler

-CContains

Nesnenin özellik değeri belirtilen değerle tam olarak eşleşiyorsa, bu cmdlet'in bir koleksiyondan nesne aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Örneğin: Get-Process | Where-Object ProcessName -CContains "svchost"

CContains bir değer koleksiyonuna başvurur ve koleksiyon belirtilen değerle tam olarak eşleşen bir öğe içeriyorsa true olur. Giriş tek bir nesneyse, PowerShell bunu bir nesne koleksiyonuna dönüştürür.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CEQ

Özellik değeri belirtilen değerle aynıysa bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CGE

Özellik değeri belirtilen değerden büyük veya buna eşitse bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CGT

Özellik değeri belirtilen değerden büyükse bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CIn

Özellik değeri belirtilen değeri içeriyorsa bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Örneğin: Get-Process | Where-Object -Value "svchost" -CIn ProcessName

CIn , özellik ve değer konumlarının ters çevrilmesi dışında CContains'e benzer. Örneğin, aşağıdaki deyimlerin her ikisi de doğrudur.

"abc", "def" -CContains "abc"

"abc" -CIn "abc", "def"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CLE

Özellik değeri belirtilen değerden küçük veya buna eşitse bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CLike

Özellik değeri joker karakter (*) içeren bir değerle eşleşiyorsa bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Örneğin: Get-Process | Where-Object ProcessName -CLike "*host"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CLT

Özellik değeri belirtilen değerden küçükse bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CMatch

Özellik değeri belirtilen normal ifadeyle eşleşiyorsa bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır. Giriş tek bir nesne olduğunda, eşleşen değer otomatik değişkene $Matches kaydedilir.

Örneğin: Get-Process | Where-Object ProcessName -CMatch "Shell"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CNE

Özellik değeri belirtilen değerden farklıysa bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CNotContains

Nesnenin özellik değeri belirtilen değerle tam olarak eşleşmediyse, bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Örneğin: Get-Process | Where-Object ProcessName -CNotContains "svchost"

NotContains ve CNotContains bir değer koleksiyonuna başvurur ve koleksiyon, belirtilen değerle tam olarak eşleşen herhangi bir öğe içermediğinde true olur. Giriş tek bir nesneyse, PowerShell bunu bir nesne koleksiyonuna dönüştürür.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CNotIn

Özellik değeri belirtilen değerle tam olarak eşleşmediyse bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Örneğin: Get-Process | Where-Object -Value "svchost" -CNotIn -Property ProcessName

NotIn ve CNotIn işleçleri, özellik ve değer konumlarının ters çevrilmesi dışında NotContains ve CNotContains'e benzer. Örneğin, aşağıdaki deyimler doğrudur.

"abc", "def" -CNotContains "Abc"

"abc" -CNotIn "Abc", "def"

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CNotLike

Özellik değeri joker karakter içeren bir değerle eşleşmiyorsa bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır.

Örneğin: Get-Process | Where-Object ProcessName -CNotLike "*host"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CNotMatch

Özellik değeri belirtilen normal ifadeyle eşleşmiyorsa bu cmdlet'in nesneleri aldığını gösterir. Bu işlem büyük/küçük harfe duyarlıdır. Giriş tek bir nesne olduğunda, eşleşen değer otomatik değişkene $Matches kaydedilir.

Örneğin: Get-Process | Where-Object ProcessName -CNotMatch "Shell"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Contains

Nesnenin özellik değerindeki herhangi bir öğe belirtilen değerle tam olarak eşleşiyorsa, bu cmdlet'in nesneleri aldığını gösterir.

Örneğin: Get-Process | Where-Object ProcessName -Contains "Svchost"

Giriş tek bir nesneyse, PowerShell bunu bir nesne koleksiyonuna dönüştürür.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:IContains
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-EQ

Özellik değeri belirtilen değerle aynıysa bu cmdlet'in nesneleri aldığını gösterir.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:IEQ
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-FilterScript

Nesneleri filtrelemek için kullanılan betik bloğunu belirtir. Betik bloğunu ayraç ({} içine alın).

FilterScript parametre adı isteğe bağlıdır.

Tür:ScriptBlock
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-GE

Özellik değeri belirtilen değerden büyük veya buna eşitse bu cmdlet'in nesneleri aldığını gösterir.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:IGE
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-GT

Özellik değeri belirtilen değerden büyükse bu cmdlet'in nesneleri aldığını gösterir.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:IGT
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-In

Özellik değeri belirtilen değerlerden herhangi biri ile eşleşiyorsa bu cmdlet'in nesneleri aldığını gösterir. Örneğin:

Get-Process | Where-Object -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"

Giriş tek bir nesneyse, PowerShell bunu bir nesne koleksiyonuna dönüştürür.

Bir nesnenin özellik değeri bir diziyse, PowerShell eşleşmeyi belirlemek için başvuru eşitliğini kullanır. Where-Objectnesnesini yalnızca Property parametresinin değeri ve Herhangi bir Value değeri bir nesnenin aynı örneğiyse döndürür.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:IIn
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-InputObject

Filtre eklenecek nesneleri belirtir. Nesneleri Where-Objectöğesine de yöneltebilirsiniz.

komut sonuçlarının yerine ile Where-ObjectInputObject parametresini kullandığınızda, cmdlet InputObject'i tek bir nesne olarak değerlendirir.Where-Object Değer gibi -InputObject (Get-Process)bir komutun sonucu olan bir koleksiyon olsa bile bu doğrudur.

InputObject bir diziden veya nesne koleksiyonundan tek tek özellikleri döndüremediğinden, tanımlı özelliklerde belirli değerlere sahip nesneler için bir nesne koleksiyonunu filtrelemek için kullanırsanızWhere-Object, bu konudaki örneklerde gösterildiği gibi işlem hattında kullanmanızı Where-Object öneririz.

Tür:PSObject
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Is

Özellik değeri belirtilen .NET türünün bir örneğiyse bu cmdlet'in nesneleri aldığını gösterir. Tür adını köşeli ayraç içine alın.

Örneğin Get-Process | Where-Object StartTime -Is [DateTime]

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-IsNot

Özellik değeri belirtilen .NET türünün bir örneği değilse bu cmdlet'in nesneleri aldığını gösterir.

Örneğin Get-Process | where StartTime -IsNot [DateTime]

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-LE

Özellik değeri belirtilen değerden küçük veya buna eşitse bu cmdlet'in nesneleri aldığını gösterir.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:ILE
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Like

Özellik değeri joker karakter (*) içeren bir değerle eşleşiyorsa bu cmdlet'in nesneleri aldığını gösterir.

Örneğin: Get-Process | Where-Object ProcessName -Like "*host"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:ILike
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-LT

Özellik değeri belirtilen değerden küçükse bu cmdlet'in nesneleri aldığını gösterir.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:ILT
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Match

Özellik değeri belirtilen normal ifadeyle eşleşiyorsa bu cmdlet'in nesneleri aldığını gösterir. Giriş tek bir nesne olduğunda, eşleşen değer otomatik değişkene $Matches kaydedilir.

Örneğin: Get-Process | Where-Object ProcessName -Match "shell"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:IMatch
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-NE

Özellik değeri belirtilen değerden farklıysa bu cmdlet'in nesneleri aldığını gösterir.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:INE
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Not

Özellik yoksa veya veya değerine sahipse bu cmdlet'in $null $falsenesneleri aldığını gösterir.

Örneğin: Get-Service | Where-Object -Not "DependentServices"

Bu parametre Windows PowerShell 6.1'de kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-NotContains

Özellik değerindeki öğelerin hiçbiri belirtilen değerle tam eşleşmediyse, bu cmdlet'in nesneleri aldığını gösterir.

Örneğin: Get-Process | Where-Object ProcessName -NotContains "Svchost"

NotContains bir değer koleksiyonuna başvurur ve koleksiyon, belirtilen değerle tam olarak eşleşen herhangi bir öğe içermiyorsa true olur. Giriş tek bir nesneyse, PowerShell bunu bir nesne koleksiyonuna dönüştürür.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:INotContains
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-NotIn

Özellik değeri belirtilen değerlerden herhangi biriyle tam olarak eşleşmediyse bu cmdlet'in nesneleri aldığını gösterir.

Örneğin: Get-Process | Where-Object -Value "svchost" -NotIn -Property ProcessName

Value değeri tek bir nesneyse, PowerShell bunu bir nesne koleksiyonuna dönüştürür.

Bir nesnenin özellik değeri bir diziyse, PowerShell eşleşmeyi belirlemek için başvuru eşitliğini kullanır. Where-Objectnesnesini yalnızca Property değeri ve Value değerlerinin bir nesnenin aynı örneği değilse döndürür.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:INotIn
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-NotLike

Özellik değeri joker karakter (*) içeren bir değerle eşleşmiyorsa bu cmdlet'in nesneleri aldığını gösterir.

Örneğin: Get-Process | Where-Object ProcessName -NotLike "*host"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:INotLike
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-NotMatch

Özellik değeri belirtilen normal ifadeyle eşleşmediğinde bu cmdlet'in nesneleri aldığını gösterir. Giriş tek bir nesne olduğunda, eşleşen değer otomatik değişkene $Matches kaydedilir.

Örneğin: Get-Process | Where-Object ProcessName -NotMatch "PowerShell"

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Diğer adlar:INotMatch
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Property

Giriş nesnesinin özelliğinin adını belirtir. Özelliğin statik özellik değil örnek özelliği olması gerekir. Bu konumsal bir parametre olduğundan, Özellik adı isteğe bağlıdır.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:String
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Value

Bir özellik değeri belirtir. Parametre adı olan Value isteğe bağlıdır. Bu parametre, aşağıdaki karşılaştırma parametreleriyle kullanıldığında joker karakterleri kabul eder:

  • CLike
  • CNotLike
  • Gibi
  • Beğenmeyen

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:PSObject
Position:1
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:True

Girişler

PSObject

Herhangi bir nesneyi bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

Object

Bu cmdlet, giriş nesnesi kümesinden seçilen öğeleri döndürür.

Notlar

PowerShell için aşağıdaki diğer adları Where-Objectiçerir:

  • Tüm Platformlar:
    • ?
    • where

Windows PowerShell 4.0'dan Where ForEach başlayarak koleksiyonlarla kullanılmak üzere yöntemler eklendi.

Bu yöntemler hakkında daha fazla bilgiyi burada about_arrays