Udostępnij za pomocą


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

GenericMeasure (domyślnie)

Measure-Object
    [[-Property] <String[]>]
    [-InputObject <PSObject>]
    [-Sum]
    [-Average]
    [-Maximum]
    [-Minimum]
    [<CommonParameters>]

TextMeasure

Measure-Object
    [[-Property] <String[]>]
    [-InputObject <PSObject>]
    [-Line]
    [-Word]
    [-Character]
    [-IgnoreWhiteSpace]
    [<CommonParameters>]

Opis

Polecenie cmdlet Measure-Object 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 cmdlet Measure-Object wykonuje obliczenia na wartości właściwości obiektów. Za pomocą Measure-Object można liczyć obiekty lub obiekty z określoną właściwością . Można również użyć Measure-Object do obliczenia minimum, maksimum, Sum, StandardDeviation i Average 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 minimalny, maksymalnyi Sum rozmiary 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 RawGet-Content zwraca plik jako tablicę wierszy.

Pierwsze polecenie używa Set-Content do 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 w celu Measure-Object.

Obiekt System.Diagnostics.Process nie ma właściwości DisplayName i jest pominięty z końcowej liczby.

$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 pliku przy użyciu Import-Csv wynik jest PSCustomObject z właściwościami notatek EmpNo i Years. Za pomocą Measure-Object można 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 pokazano, jak Measure-Object może mierzyć wartości logiczne. W tym przypadku używa właściwości PSIsContainerwartości logicznej, aby zmierzyć częstość 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 nowego wiersza `n 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.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

GenericMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Character

Wskazuje, że polecenie cmdlet zlicza liczbę znaków w obiektach wejściowych.

Uwaga / Notatka

Przełączniki Word, Char i Linewewnątrz każdego obiektu wejściowego, a także między obiektami wejściowymi. Zobacz przykład 7.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

TextMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-IgnoreWhiteSpace

Wskazuje, że polecenie cmdlet ignoruje białe znaki w liczbach znaków. Domyślnie białe znaki nie są ignorowane.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

TextMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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 Measure-Object w potoku, jeśli chcesz zmierzyć kolekcję obiektów na podstawie tego, czy obiekty mają określone wartości we zdefiniowanych właściwościach.

Właściwości parametru

Typ:PSObject
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Line

Wskazuje, że polecenie cmdlet zlicza liczbę wierszy w obiektach wejściowych.

Uwaga / Notatka

Przełączniki Word, Char i Linewewnątrz każdego obiektu wejściowego, a także między obiektami wejściowymi. Zobacz przykład 7.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

TextMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Maximum

Wskazuje, że polecenie cmdlet wyświetla maksymalną wartość określonych właściwości.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

GenericMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Minimum

Wskazuje, że polecenie cmdlet wyświetla minimalną wartość określonych właściwości.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

GenericMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów: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.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:0
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Sum

Wskazuje, że polecenie cmdlet wyświetla sumę wartości określonych właściwości.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

GenericMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Word

Wskazuje, że polecenie cmdlet zlicza liczbę wyrazów w obiektach wejściowych.

Uwaga / Notatka

Przełączniki Word, Char i Linewewnątrz każdego obiektu wejściowego, a także między obiektami wejściowymi. Zobacz przykład 7.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

TextMeasure
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

PSObject

Do tego polecenia cmdlet można przekazywać obiekty.

Dane wyjściowe

GenericMeasureInfo

Domyślnie to polecenie cmdlet zwraca obiekt GenericMeasureInfo.

TextMeasureInfo

Jeśli używasz parametru Word, to polecenie cmdlet zwraca obiekt TextMeasureInfo.

Uwagi

Program Windows PowerShell zawiera następujące aliasy dla Measure-Object:

  • measure