Measure-Object
Oblicza właściwości liczbowe obiektów oraz znaki, wyrazy i wiersze w obiektach ciągów, takich jak pliki tekstu.
Składnia
Measure-Object
[-InputObject <PSObject>]
[[-Property] <String[]>]
[-Sum]
[-Average]
[-Maximum]
[-Minimum]
[<CommonParameters>]
Measure-Object
[-InputObject <PSObject>]
[[-Property] <String[]>]
[-Line]
[-Word]
[-Character]
[-IgnoreWhiteSpace]
[<CommonParameters>]
Opis
Polecenie Measure-Object
cmdlet oblicza wartości właściwości niektórych typów obiektów.
Measure-Object
wykonuje trzy typy pomiarów, w zależności od parametrów w poleceniu.
Polecenie Measure-Object
cmdlet wykonuje obliczenia dotyczące wartości właściwości obiektów. Można użyć Measure-Object
do zliczenia obiektów lub zliczać obiekty z określoną właściwością. Można również użyć Measure-Object
polecenia , aby obliczyć wartości minimum, maksimum, sumę, standarddeviation i średnią wartości liczbowych. W przypadku obiektów String można również użyć Measure-Object
do zliczenia liczby wierszy, wyrazów i znaków.
Przykłady
Przykład 1: zlicz pliki i foldery w katalogu
To polecenie zlicza pliki i foldery w bieżącym katalogu.
Get-ChildItem | Measure-Object
Przykład 2. Mierzenie plików w katalogu
To polecenie wyświetla minimalną, maksymalną i sumę rozmiarów wszystkich plików w bieżącym katalogu oraz średni rozmiar pliku w katalogu.
Get-ChildItem | Measure-Object -Property length -Minimum -Maximum -Sum -Average
Przykład 3. Mierzenie tekstu w pliku tekstowym
To polecenie wyświetla liczbę znaków, wyrazów i wierszy w pliku Text.txt.
Bez parametru Get-Content
Raw zwraca plik jako tablicę wierszy.
Pierwsze polecenie używa Set-Content
polecenia w celu dodania domyślnego tekstu do pliku.
"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
Przykład 4. Mierzenie obiektów zawierających określoną właściwość
W tym przykładzie zlicza się liczbę obiektów, które mają właściwość DisplayName . Pierwsze dwa polecenia pobierają wszystkie usługi i procesy na komputerze lokalnym. Trzecie polecenie zlicza łączną liczbę usług i procesów. Ostatnie polecenie łączy dwie kolekcje i potokuje wynik do Measure-Object
.
Obiekt System.Diagnostics.Process nie ma właściwości DisplayName i jest pominięty w końcowej liczbie.
$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
Przykład 5. Mierzenie zawartości pliku CSV
To polecenie oblicza średnie lata obsługi pracowników firmy.
Plik ServiceYrs.csv
jest plikiem CSV zawierającym liczbę pracowników i lata obsługi każdego pracownika. Pierwszy wiersz w tabeli to wiersz nagłówka EmpNo, Years.
W przypadku importowania Import-Csv
pliku wynik jest obiektem PSCustomObject z właściwościami notatek EmpNo i Years.
Możesz użyć Measure-Object
polecenia , aby obliczyć wartości tych właściwości, podobnie jak każda inna właściwość obiektu.
Import-Csv d:\test\serviceyrs.csv | Measure-Object -Property years -Minimum -Maximum -Average
Przykład 6. Mierzenie wartości logicznych
W tym przykładzie Measure-Object
pokazano, jak można mierzyć wartości logiczne.
W tym przypadku używa właściwości logicznej PSIsContainerdo mierzenia częstości występowania folderów (w porównaniu z plikami) w bieżącym katalogu.
Get-ChildItem | Measure-Object -Property psiscontainer -Maximum -Sum -Minimum -Average
Count : 126
Average : 0.0634920634920635
Sum : 8
Maximum : 1
Minimum : 0
StandardDeviation :
Property : PSIsContainer
Przykład 7. Mierzenie ciągów
Poniższy przykład mierzy liczbę wierszy, najpierw jeden ciąg, a następnie kilka ciągów. Znak `n
nowego wiersza oddziela ciągi w wiele wierszy.
# 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
Parametry
-Average
Wskazuje, że polecenie cmdlet wyświetla średnią wartość określonych właściwości.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Character
Wskazuje, że polecenie cmdlet zlicza liczbę znaków w obiektach wejściowych.
Uwaga
Przełączniki Word, Char i Line są liczone wewnątrz każdego obiektu wejściowego, a także między obiektami wejściowymi. Zobacz przykład 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IgnoreWhiteSpace
Wskazuje, że polecenie cmdlet ignoruje białe znaki w liczbach znaków. Domyślnie białe znaki nie są ignorowane.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Określa obiekty, które mają być mierzone. Wprowadź zmienną zawierającą obiekty lub wpisz polecenie lub wyrażenie, które pobiera obiekty.
Jeśli używasz parametru InputObject z parametrem Measure-Object
, zamiast potokowania wyników polecenia do Measure-Object
, wartość InputObject jest traktowana jako pojedynczy obiekt.
Zaleca się użycie w Measure-Object
potoku, jeśli chcesz zmierzyć kolekcję obiektów na podstawie tego, czy obiekty mają określone wartości we zdefiniowanych właściwościach.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Line
Wskazuje, że polecenie cmdlet zlicza liczbę wierszy w obiektach wejściowych.
Uwaga
Przełączniki Word, Char i Line są liczone wewnątrz każdego obiektu wejściowego, a także między obiektami wejściowymi. Zobacz przykład 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Maximum
Wskazuje, że polecenie cmdlet wyświetla maksymalną wartość określonych właściwości.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Minimum
Wskazuje, że polecenie cmdlet wyświetla minimalną wartość określonych właściwości.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Property
Określa co najmniej jedną właściwość do mierzenia. Jeśli nie określisz żadnych innych miar, Measure-Object
zlicza obiekty, które mają określone właściwości.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Sum
Wskazuje, że polecenie cmdlet wyświetla sumę wartości określonych właściwości.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Word
Wskazuje, że polecenie cmdlet zlicza liczbę wyrazów w obiektach wejściowych.
Uwaga
Przełączniki Word, Char i Line są liczone wewnątrz każdego obiektu wejściowego, a także między obiektami wejściowymi. Zobacz przykład 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Dane wejściowe
Do tego polecenia cmdlet można przekazać obiekty potokowe.
Dane wyjściowe
Domyślnie to polecenie cmdlet zwraca obiekt GenericMeasureInfo .
Gdy używasz parametru programu Word , to polecenie cmdlet zwraca obiekt TextMeasureInfo .
Uwagi
Program Windows PowerShell zawiera następujące aliasy dla programu Measure-Object
:
measure
Linki powiązane
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla