Where-Object
Memilih objek dari koleksi berdasarkan nilai propertinya.
Sintaks
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>]
Deskripsi
Where-Object
Cmdlet memilih objek yang memiliki nilai properti tertentu dari kumpulan objek yang diteruskan ke objek tersebut. Misalnya, Anda dapat menggunakan Where-Object
cmdlet untuk memilih file yang dibuat setelah tanggal tertentu, peristiwa dengan ID tertentu, atau komputer yang menggunakan versi Windows tertentu.
Dimulai di Windows PowerShell 3.0, ada dua cara berbeda untuk membuat Where-Object
perintah.
Blok skrip. Anda dapat menggunakan blok skrip untuk menentukan nama properti, operator perbandingan, dan nilai properti.
Where-Object
mengembalikan semua objek yang pernyataan blok skripnya benar.Misalnya, perintah berikut mendapatkan proses di
Normal
kelas prioritas, yaitu, proses di mana nilai properti PriorityClass sama denganNormal
.Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}
Semua operator perbandingan PowerShell valid dalam format blok skrip. Untuk informasi selengkapnya, lihat about_Comparison_Operators.
Pernyataan perbandingan. Anda juga dapat menulis pernyataan perbandingan, yang jauh lebih seperti bahasa alami. Pernyataan perbandingan diperkenalkan di Windows PowerShell 3.0.
Misalnya, perintah berikut juga mendapatkan proses yang memiliki kelas prioritas .
Normal
Perintah ini setara dan Anda dapat menggunakannya secara bergantian.Get-Process | Where-Object -Property PriorityClass -EQ -Value "Normal"
Get-Process | Where-Object PriorityClass -EQ "Normal"
Dimulai di Windows PowerShell 3.0,
Where-Object
menambahkan operator perbandingan sebagai parameter dalamWhere-Object
perintah. Kecuali ditentukan, semua operator tidak peka huruf besar/kecil. Sebelum Windows PowerShell 3.0, operator perbandingan dalam bahasa PowerShell hanya dapat digunakan dalam blok skrip.
Saat Anda memberikan satu Properti ke Where-Object
, cmdlet memperlakukan nilai properti sebagai ekspresi boolean. Saat nilai Panjang properti bukan nol, ekspresi mengevaluasi ke $true
. Misalnya: ('hi', '', 'there') | Where-Object Length
Contoh sebelumnya secara fungsional setara dengan:
('hi', '', 'there') | Where-Object Length -GT 0
('hi', '', 'there') | Where-Object { $_.Length -gt 0 }
Untuk informasi selengkapnya tentang bagaimana PowerShell mengevaluasi boolean, lihat about_Booleans.
Contoh
Contoh 1: Dapatkan layanan yang dihentikan
Perintah ini mendapatkan daftar semua layanan yang dihentikan. Variabel $_
otomatis mewakili setiap objek yang diteruskan ke Where-Object
cmdlet.
Perintah pertama menggunakan format blok skrip, perintah kedua menggunakan format pernyataan perbandingan. Perintah memfilter layanan dengan cara yang sama dan mengembalikan output yang sama. Hanya sintaksnya yang berbeda.
Get-Service | Where-Object { $_.Status -eq "Stopped" }
Get-Service | Where-Object Status -EQ "Stopped"
Contoh 2: Mendapatkan proses berdasarkan set kerja
Perintah ini mencantumkan proses yang memiliki set kerja lebih besar dari 250 megabyte (MB). Perintah memfilter proses dengan cara yang sama dan mengembalikan output yang sama. Hanya sintaksnya yang berbeda.
Get-Process | Where-Object { $_.WorkingSet -GT 250MB }
Get-Process | Where-Object WorkingSet -GT 250MB
Contoh 3: Dapatkan proses berdasarkan nama proses
Perintah ini mendapatkan proses yang memiliki nilai properti ProcessName yang dimulai dengan huruf p
. Operator Match memungkinkan Anda menggunakan kecocokan ekspresi reguler.
Perintah memfilter proses dengan cara yang sama dan mengembalikan output yang sama. Hanya sintaksnya yang berbeda.
Get-Process | Where-Object { $_.ProcessName -Match "^p.*" }
Get-Process | Where-Object ProcessName -Match "^p.*"
Contoh 4: Gunakan format pernyataan perbandingan
Contoh ini menunjukkan cara menggunakan format pernyataan perbandingan baru cmdlet Where-Object
.
Perintah pertama menggunakan format pernyataan perbandingan. Ini tidak menggunakan alias apa pun dan menyertakan nama untuk setiap parameter.
Perintah kedua adalah penggunaan format perintah perbandingan yang lebih alami. Perintah menggantikan where
alias untuk Where-Object
nama cmdlet dan menghilangkan semua nama parameter opsional.
Perintah memfilter proses dengan cara yang sama dan mengembalikan output yang sama. Hanya sintaksnya yang berbeda.
Get-Process | Where-Object -Property Handles -GE -Value 1000
Get-Process | where Handles -GE 1000
Contoh 5: Dapatkan perintah berdasarkan properti
Contoh ini menunjukkan cara menulis perintah yang mengembalikan item yang benar atau salah atau memiliki nilai apa pun untuk properti tertentu. Setiap contoh menunjukkan format blok skrip dan pernyataan perbandingan untuk perintah .
Perintah memfilter inputnya dengan cara yang sama dan mengembalikan output yang sama. Hanya sintaksnya yang berbeda.
# 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 }
Contoh 6: Menggunakan beberapa kondisi
Get-Module -ListAvailable | Where-Object {
($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri
}
Contoh ini menunjukkan cara membuat Where-Object
perintah dengan beberapa kondisi.
Perintah ini mendapatkan modul non-inti yang mendukung fitur Bantuan yang Dapat Diperbarui. Perintah menggunakan parameter ListAvailable cmdlet Get-Module
untuk mendapatkan semua modul di komputer. Operator alur (|
) mengirim modul ke Where-Object
cmdlet, yang mendapatkan modul yang namanya tidak dimulai dengan Microsoft
atau PS
, dan memiliki nilai untuk properti HelpInfoURI , yang memberi tahu PowerShell tempat menemukan file bantuan yang diperbarui untuk modul. Operator -and
logis menyambungkan pernyataan perbandingan.
Contoh menggunakan format perintah blok skrip. Operator logis, seperti -and
,-or
, dan -not
hanya valid dalam blok skrip. Anda tidak dapat menggunakannya dalam format pernyataan perbandingan Where-Object
perintah.
- Untuk informasi selengkapnya tentang operator logis PowerShell, lihat about_Logical_Operators.
- Untuk informasi selengkapnya tentang fitur Bantuan yang Dapat Diperbarui, lihat about_Updatable_Help.
Parameter
-CContains
Menunjukkan bahwa cmdlet ini mendapatkan objek dari koleksi jika nilai properti objek sama persis dengan nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Misalnya: Get-Process | Where-Object ProcessName -CContains "svchost"
CContains mengacu pada kumpulan nilai dan benar jika koleksi berisi item yang sama persis dengan nilai yang ditentukan. Jika input adalah objek tunggal, PowerShell mengonversinya menjadi kumpulan satu objek.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CEQ
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti sama dengan nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CGE
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti lebih besar dari atau sama dengan nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CGT
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti lebih besar dari nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CIn
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti menyertakan nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Misalnya: Get-Process | Where-Object -Value "svchost" -CIn ProcessName
CIn menyerupai CContains, kecuali bahwa posisi properti dan nilai dibalik. Misalnya, pernyataan berikut keduanya benar.
"abc", "def" -CContains "abc"
"abc" -CIn "abc", "def"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CLE
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti kurang dari atau sama dengan nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CLike
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti cocok dengan nilai yang menyertakan karakter kartubebas (*
). Operasi ini peka huruf besar/kecil.
Misalnya: Get-Process | Where-Object ProcessName -CLike "*host"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CLT
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti kurang dari nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CMatch
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti cocok dengan ekspresi reguler yang ditentukan. Operasi ini peka huruf besar/kecil. Ketika input adalah objek tunggal, nilai yang cocok disimpan dalam $Matches
variabel otomatis.
Misalnya: Get-Process | Where-Object ProcessName -CMatch "Shell"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CNE
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti berbeda dari nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CNotContains
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti objek tidak sama persis dengan nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Misalnya: Get-Process | Where-Object ProcessName -CNotContains "svchost"
NotContains dan CNotContains mengacu pada kumpulan nilai dan benar ketika koleksi tidak berisi item apa pun yang sama persis dengan nilai yang ditentukan. Jika input adalah objek tunggal, PowerShell mengonversinya menjadi kumpulan satu objek.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CNotIn
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti tidak sama persis dengan nilai yang ditentukan. Operasi ini peka huruf besar/kecil.
Misalnya: Get-Process | Where-Object -Value "svchost" -CNotIn -Property ProcessName
Operator NotIn dan CNotIn menyerupai NotContains dan CNotContains, kecuali bahwa posisi properti dan nilai dibalik. Misalnya, pernyataan berikut benar.
"abc", "def" -CNotContains "Abc"
"abc" -CNotIn "Abc", "def"
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CNotLike
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti tidak cocok dengan nilai yang menyertakan karakter kartubebas. Operasi ini peka huruf besar/kecil.
Misalnya: Get-Process | Where-Object ProcessName -CNotLike "*host"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CNotMatch
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti tidak cocok dengan ekspresi reguler yang ditentukan. Operasi ini peka huruf besar/kecil. Ketika input adalah objek tunggal, nilai yang cocok disimpan dalam $Matches
variabel otomatis.
Misalnya: Get-Process | Where-Object ProcessName -CNotMatch "Shell"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Contains
Menunjukkan bahwa cmdlet ini mendapatkan objek jika ada item dalam nilai properti objek yang sama persis dengan nilai yang ditentukan.
Misalnya: Get-Process | Where-Object ProcessName -Contains "Svchost"
Jika input adalah objek tunggal, PowerShell mengonversinya menjadi kumpulan satu objek.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | IContains |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-EQ
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti sama dengan nilai yang ditentukan.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | IEQ |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-FilterScript
Menentukan blok skrip yang digunakan untuk memfilter objek. Sertakan blok skrip dalam tanda kurung kurawal ({}
).
Nama parameter, FilterScript, bersifat opsional.
Jenis: | ScriptBlock |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-GE
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti lebih besar dari atau sama dengan nilai yang ditentukan.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | IGE |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-GT
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti lebih besar dari nilai yang ditentukan.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | IGT |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-In
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti cocok dengan salah satu nilai yang ditentukan. Contohnya:
Get-Process | Where-Object -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"
Jika input adalah objek tunggal, PowerShell mengonversinya menjadi kumpulan satu objek.
Jika nilai properti objek adalah array, PowerShell menggunakan kesetaraan referensi untuk menentukan kecocokan. Where-Object
mengembalikan objek hanya jika nilai parameter Properti dan nilai Nilai apa pun adalah instans objek yang sama.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | IIn |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-InputObject
Menentukan objek yang akan difilter. Anda juga dapat menyalurkan objek ke Where-Object
.
Saat Anda menggunakan parameter InputObject dengan Where-Object
, alih-alih hasil perintah pipa ke Where-Object
, cmdlet memperlakukan InputObject sebagai satu objek. Ini benar bahkan jika nilainya adalah koleksi yang merupakan hasil dari perintah, seperti -InputObject (Get-Process)
.
Karena InputObject tidak dapat mengembalikan properti individual dari array atau kumpulan objek, kami sarankan, jika Anda menggunakan Where-Object
untuk memfilter kumpulan objek untuk objek yang memiliki nilai tertentu dalam properti yang ditentukan, Anda gunakan Where-Object
dalam alur, seperti yang ditunjukkan dalam contoh dalam topik ini.
Jenis: | PSObject |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Is
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti adalah instans dari jenis .NET yang ditentukan. Sertakan nama jenis dalam tanda kurung siku.
Misalnya: Get-Process | Where-Object StartTime -Is [DateTime]
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-IsNot
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti bukan instans dari jenis .NET yang ditentukan.
Misalnya: Get-Process | where StartTime -IsNot [DateTime]
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-LE
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti kurang dari atau sama dengan nilai yang ditentukan.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | ILE |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Like
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti cocok dengan nilai yang menyertakan karakter kartubebas (*
).
Misalnya: Get-Process | Where-Object ProcessName -Like "*host"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | ILike |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-LT
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti kurang dari nilai yang ditentukan.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | ILT |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Match
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti cocok dengan ekspresi reguler yang ditentukan. Ketika input adalah objek tunggal, nilai yang cocok disimpan dalam $Matches
variabel otomatis.
Misalnya: Get-Process | Where-Object ProcessName -Match "shell"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | IMatch |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NE
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti berbeda dari nilai yang ditentukan.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | INE |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Not
Menunjukkan bahwa cmdlet ini mendapatkan objek jika properti tidak ada atau memiliki nilai $null
atau $false
.
Misalnya: Get-Service | Where-Object -Not "DependentServices"
Parameter ini diperkenalkan di Windows PowerShell 6.1.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NotContains
Menunjukkan bahwa cmdlet ini mendapatkan objek jika tidak ada item dalam nilai properti yang sama persis dengan nilai yang ditentukan.
Misalnya: Get-Process | Where-Object ProcessName -NotContains "Svchost"
NotContains mengacu pada kumpulan nilai dan benar jika koleksi tidak berisi item apa pun yang sama persis dengan nilai yang ditentukan. Jika input adalah objek tunggal, PowerShell mengonversinya menjadi kumpulan satu objek.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | INotContains |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NotIn
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti tidak sama persis untuk salah satu nilai yang ditentukan.
Misalnya: Get-Process | Where-Object -Value "svchost" -NotIn -Property ProcessName
Jika nilai Nilai adalah objek tunggal, PowerShell mengonversinya menjadi kumpulan satu objek.
Jika nilai properti objek adalah array, PowerShell menggunakan kesetaraan referensi untuk menentukan kecocokan. Where-Object
mengembalikan objek hanya jika nilai Properti dan nilai Nilai apa pun bukan instans objek yang sama.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | INotIn |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NotLike
Menunjukkan bahwa cmdlet ini mendapatkan objek jika nilai properti tidak cocok dengan nilai yang menyertakan karakter kartubebas (*
).
Misalnya: Get-Process | Where-Object ProcessName -NotLike "*host"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | INotLike |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NotMatch
Menunjukkan bahwa cmdlet ini mendapatkan objek ketika nilai properti tidak cocok dengan ekspresi reguler yang ditentukan. Ketika input adalah objek tunggal, nilai yang cocok disimpan dalam $Matches
variabel otomatis.
Misalnya: Get-Process | Where-Object ProcessName -NotMatch "PowerShell"
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Alias: | INotMatch |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Property
Menentukan nama properti objek input. Properti harus berupa properti instans, bukan properti statis. Ini adalah parameter posisi, sehingga nama, Properti, bersifat opsional.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | String |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Value
Menentukan nilai properti. Nama parameter, Nilai, bersifat opsional. Parameter ini menerima karakter kartubebas saat digunakan dengan parameter perbandingan berikut:
- CLike
- CNotLike
- Suka
- Tidak Seperti
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | PSObject |
Position: | 1 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | True |
Input
Anda dapat menyalurkan objek apa pun ke cmdlet ini.
Output
Cmdlet ini mengembalikan item yang dipilih dari set objek input.
Catatan
PowerShell menyertakan alias berikut untuk Where-Object
:
- Semua Platform:
?
where
Mulai dari Windows PowerShell 4.0, Where
dan ForEach
metode ditambahkan untuk digunakan dengan koleksi.
Anda dapat membaca selengkapnya tentang metode ini di sini about_arrays