Measure-Object
Berekent de numerieke eigenschappen van objecten en de tekens, woorden en regels in tekenreeksobjecten, zoals bestanden met tekst.
Syntaxis
Measure-Object
[-InputObject <PSObject>]
[[-Property] <String[]>]
[-Sum]
[-Average]
[-Maximum]
[-Minimum]
[<CommonParameters>]
Measure-Object
[-InputObject <PSObject>]
[[-Property] <String[]>]
[-Line]
[-Word]
[-Character]
[-IgnoreWhiteSpace]
[<CommonParameters>]
Description
De Measure-Object
cmdlet berekent de eigenschapswaarden van bepaalde typen objecten.
Measure-Object
voert drie typen metingen uit, afhankelijk van de parameters in de opdracht.
De Measure-Object
cmdlet voert berekeningen uit op de eigenschapswaarden van objecten. U kunt objecten Measure-Object
tellen of objecten tellen met een opgegeven eigenschap. U kunt ook Measure-Object
de waarden Minimum, Maximum, Sum, StandardDeviation en Average van numerieke waarden berekenen. Voor tekenreeksobjecten kunt u ook het Measure-Object
aantal regels, woorden en tekens tellen.
Voorbeelden
Voorbeeld 1: De bestanden en mappen in een map tellen
Met deze opdracht worden de bestanden en mappen in de huidige map geteld.
Get-ChildItem | Measure-Object
Voorbeeld 2: De bestanden in een map meten
Met deze opdracht worden de minimale, maximum- en somgrootte van alle bestanden in de huidige map en de gemiddelde grootte van een bestand in de map weergegeven.
Get-ChildItem | Measure-Object -Property length -Minimum -Maximum -Sum -Average
Voorbeeld 3: Tekst meten in een tekstbestand
Met deze opdracht wordt het aantal tekens, woorden en regels in het bestand Text.txt weergegeven.
Zonder de parameter Get-Content
Raw wordt het bestand uitgevoerd als een matrix met regels.
De eerste opdracht gebruikt Set-Content
om een aantal standaardteksten toe te voegen aan een bestand.
"One", "Two", "Three", "Four" | Set-Content -Path C:\Temp\tmp.txt
Get-Content C:\Temp\tmp.txt | Measure-Object -Character -Line -Word
Lines Words Characters Property
----- ----- ---------- --------
4 4 15
Voorbeeld 4: Objecten meten die een opgegeven eigenschap bevatten
In dit voorbeeld wordt het aantal objecten geteld dat een Eigenschap DisplayName heeft. Met de eerste twee opdrachten worden alle services en processen op de lokale computer opgehaald. Met de derde opdracht wordt het gecombineerde aantal services en processen geteld. De laatste opdracht combineert de twee verzamelingen en pijpt het resultaat naar Measure-Object
.
Het object System.Diagnostics.Process heeft geen eigenschap DisplayName en valt buiten het uiteindelijke aantal.
$services = Get-Service
$processes = Get-Process
$services + $processes | Measure-Object
$services + $processes | Measure-Object -Property DisplayName
Count : 682
Average :
Sum :
Maximum :
Minimum :
Property :
Count : 290
Average :
Sum :
Maximum :
Minimum :
Property : DisplayName
Voorbeeld 5: De inhoud van een CSV-bestand meten
Met deze opdracht worden de gemiddelde servicejaren van de werknemers van een bedrijf berekend.
Het ServiceYrs.csv
bestand is een CSV-bestand dat het werknemersnummer en de jaren van de service van elke werknemer bevat. De eerste rij in de tabel is een veldnamenrij van EmpNo, Years.
Wanneer u Import-Csv
het bestand importeert, is het resultaat een PSCustomObject met note-eigenschappen van EmpNo en Years.
U kunt Measure-Object
de waarden van deze eigenschappen berekenen, net zoals elke andere eigenschap van een object.
Import-Csv d:\test\serviceyrs.csv | Measure-Object -Property years -Minimum -Maximum -Average
Voorbeeld 6: Booleaanse waarden meten
In dit voorbeeld ziet u hoe booleaanse Measure-Object
waarden kunnen worden gemeten.
In dit geval wordt de booleaanse eigenschap PSIsContainer gebruikt om de incidentie van mappen (vs. bestanden) in de huidige map te meten.
Get-ChildItem | Measure-Object -Property psiscontainer -Maximum -Sum -Minimum -Average
Count : 126
Average : 0.0634920634920635
Sum : 8
Maximum : 1
Minimum : 0
StandardDeviation :
Property : PSIsContainer
Voorbeeld 7: Tekenreeksen meten
In het volgende voorbeeld wordt het aantal regels meten, eerst één tekenreeks en vervolgens over verschillende tekenreeksen. Het teken `n
newline scheidt tekenreeksen in meerdere regels.
# The newline character `n separates the string into separate lines, as shown in the output.
"One`nTwo`nThree"
"One`nTwo`nThree" | Measure-Object -Line
One
Two
Three
Lines Words Characters Property
----- ----- ---------- --------
3
# The first string counts as a single line.
# The second string is separated into two lines by the newline character.
"One", "Two`nThree" | Measure-Object -Line
Lines Words Characters Property
----- ----- ---------- --------
3
# The Word switch counts the number of words in each InputObject
# Each InputObject is treated as a single line.
"One, Two", "Three", "Four Five" | Measure-Object -Word -Line
Lines Words Characters Property
----- ----- ---------- --------
3 5
Parameters
-Average
Geeft aan dat de cmdlet de gemiddelde waarde van de opgegeven eigenschappen weergeeft.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Character
Geeft aan dat de cmdlet het aantal tekens in de invoerobjecten telt.
Notitie
De schakelopties Word, Teken en Lijn tellen binnen elk invoerobject, evenals voor invoerobjecten. Zie voorbeeld 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-IgnoreWhiteSpace
Geeft aan dat de cmdlet witruimte in het aantal tekens negeert. Standaard wordt witruimte niet genegeerd.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-InputObject
Hiermee geeft u de objecten die moeten worden gemeten. Voer een variabele in die de objecten bevat of typ een opdracht of expressie waarmee de objecten worden opgehaald.
Wanneer u de parameter InputObject gebruikt met Measure-Object
, in plaats van de resultaten van de opdracht Measure-Object
piping, wordt de Waarde InputObject behandeld als één object.
Het wordt aanbevolen om in de pijplijn een verzameling objecten te meten Measure-Object
op basis van of de objecten specifieke waarden hebben in gedefinieerde eigenschappen.
Type: | PSObject |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Line
Geeft aan dat de cmdlet het aantal regels in de invoerobjecten telt.
Notitie
De schakelopties Word, Teken en Lijn tellen binnen elk invoerobject, evenals voor invoerobjecten. Zie voorbeeld 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Maximum
Geeft aan dat de cmdlet de maximumwaarde van de opgegeven eigenschappen weergeeft.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Minimum
Geeft aan dat de cmdlet de minimumwaarde van de opgegeven eigenschappen weergeeft.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Property
Hiermee geeft u een of meer eigenschappen die moeten worden gemeten. Als u geen andere metingen opgeeft, Measure-Object
telt u de objecten met de eigenschappen die u opgeeft.
Type: | String[] |
Position: | 0 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
-Sum
Geeft aan dat de cmdlet de som van de waarden van de opgegeven eigenschappen weergeeft.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Word
Geeft aan dat de cmdlet het aantal woorden in de invoerobjecten telt.
Notitie
De schakelopties Word, Teken en Lijn tellen binnen elk invoerobject, evenals voor invoerobjecten. Zie voorbeeld 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt objecten doorsluisen naar deze cmdlet.
Uitvoerwaarden
Deze cmdlet retourneert standaard een GenericMeasureInfo-object .
Wanneer u de Word-parameter gebruikt, retourneert deze cmdlet een TextMeasureInfo-object .
Notities
Windows PowerShell bevat de volgende aliassen voor Measure-Object
:
measure