Hallo Iedereen

Welkom bij CloudAffaire en dit is Debjeet.

In de laatste blogpost hebben we het Sort-Object cmdlet in PowerShell besproken.

PowerShell Sort-Object Cmdlet

In deze blogpost zullen we het Where-Object cmdlet in PowerShell bespreken. U kunt het cmdlet Where-Object gebruiken om objecten te filteren op basis van bepaalde criteria in PowerShell. Je moet de naam van de eigenschap en de voorwaarde voor filtratie definiëren en het object zal de objecten teruggeven die aan de voorwaarde voldoen. Bijvoorbeeld, stel dat je services wilt krijgen die gestopt zijn. Je kunt Get-Service | Where-Object Status -eq Gestopt commando gebruiken om alle gestopte services te krijgen. De conditie in het Where-Object cmdlet kan op twee manieren worden opgegeven. U kunt een scriptblok gebruiken om de objectnaam, een vergelijkingsoperator en een objectwaarde op te geven. Where-Object geeft alle objecten waarvoor het scriptblok statement waar is. Je kunt ook een vergelijkingsstatement schrijven, wat veel meer lijkt op natuurlijke taal.

Where-Object Cmdlet Syntaxis:

Shell

1
2
3
4
5
6
7
8
9
10
11

## Waar-Object
##
## <String>
## <Object>]
## <ScriptBlock>
## | | | | | |
## | | | |
## | | |
## | | |
## | | |
##

>

Where-Object Cmdlet Argumentenlijst:

  • -FilterScript: Specificeert het scriptblok dat wordt gebruikt om de objecten te filteren. Zet het scriptblok tussen accolades ({}).
  • -InputObject: Specificeert de objecten die moeten worden gefilterd. U kunt de objecten ook naar Where-Object leiden.
  • -Property: Specificeert de naam van een objecteigenschap. De parameternaam, Property, is optioneel.
  • -Value: Specificeert de waarde van een eigenschap. De parameternaam, Waarde, is facultatief.
  • -Contains: Property-waarde van het object is een exacte overeenkomst voor de gespecificeerde waarde.
  • -Contains: Eigenschap waarde van het object is een exacte overeenkomst voor de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
  • -NotContains: Als geen van de items in de eigenschapswaarde een exacte overeenkomst is voor de gespecificeerde waarde.
  • -CNotContains: Als de eigenschap waarde van het object geen exacte match is voor de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
  • -EQ: Eigenschap waarde is hetzelfde als de gespecificeerde waarde.
  • -CEQ: Eigenschap waarde is hetzelfde als de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
  • -NE: Eigenschap waarde is anders dan de gespecificeerde waarde.
  • -CNE: Eigenschap waarde is anders dan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
  • -GE: Eigenschap waarde is groter dan of gelijk aan de opgegeven waarde.
  • -CGE: Eigenschap waarde is groter dan of gelijk aan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
  • -GT: Eigenschap waarde is groter dan de gespecificeerde waarde.
  • -CGT: Eigenschap waarde is groter dan de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
  • -In: Eigenschap waarde komt overeen met een van de opgegeven waarden.
  • -CIn: Eigenschap waarde omvat de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
  • -NotIn: Eigenschapswaarde is geen exacte overeenkomst voor een van de gespecificeerde waarden.
  • -CNotIn: Als de eigenschapswaarde geen exacte overeenkomst is voor de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
  • -LE: Property waarde is kleiner dan of gelijk aan de gespecificeerde waarde.
  • -CLE: Eigenschap waarde is kleiner dan of gelijk aan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
  • -Like: Eigenschap waarde komt overeen met een waarde die jokertekens bevat.
  • -CLike: Eigenschap waarde komt overeen met een waarde die jokertekens bevat. Deze bewerking is hoofdlettergevoelig.
  • -NotLike: Als de eigenschap waarde niet overeenkomt met een waarde die jokertekens bevat.
  • -CNotLike: Als de eigenschap waarde niet overeenkomt met een waarde die jokertekens bevat. Deze bewerking is hoofdlettergevoelig.
  • -LT: De waarde van de eigenschap is kleiner dan de opgegeven waarde.
  • -CLT: De waarde van de eigenschap is kleiner dan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
  • -Match: Eigenschap waarde komt overeen met de opgegeven reguliere expressie.
  • -CMatch: Eigenschap waarde komt overeen met de opgegeven reguliere expressie. Deze bewerking is hoofdlettergevoelig.
  • -NotMatch: Als de eigenschap waarde niet overeenkomt met de opgegeven reguliere expressie.
  • -CNotMatch: Als de eigenschap waarde niet overeenkomt met de opgegeven reguliere expressie. Deze bewerking is hoofdlettergevoelig.
  • -Is: De waarde van de eigenschap is een instantie van het gespecificeerde .NET-type. Zet de typenaam tussen vierkante haken.
  • -IsNot: Als de eigenschapwaarde geen instantie van het gespecificeerde .NET-type is.

PowerShell Where-Object Cmdlet:

Filter Output Based On Condition In PowerShell:

Shell

1
2
3
4
5
6
7
8
9
10
11
12

########################################
## PowerShell | Cmdlet | Where-Object ##
########################################
## PowerShell Laatste Versie (5)
## uitvoer filteren op basis van voorwaarde in PowerShell
Get-Service | Where-Object Status -eq Stopped
Get-Service | Where-Object -Property Status -EQ -Value Stopped
Get-Service | Where-Object { $_.Status -eq “Stopped” }

Uitvoer filteren op basis van meerdere voorwaarden in PowerShell:

Shell

1
2
3

uitvoer filteren op basis van meerdere voorwaarden in PowerShell
Get-Service | Where-Object { $_.Status -eq “Stopped” -and $_.DisplayName -match “Windows*” }

Hoop dat je van dit artikel hebt genoten. In de volgende blogpost zullen we het cmdlet ForEach-Object in PowerShell bespreken.

Voor meer informatie over PowerShell, gelieve de onderstaande officiële documentatie te volgen

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about?view=powershell-5.1

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.