Measure-Object
Kiszámítja az objektumok numerikus tulajdonságait, valamint a sztringobjektumokban lévő karaktereket, szavakat és sorokat, például szövegfájlokat.
Syntax
GenericMeasure (Alapértelmezett)
Measure-Object
[[-Property] <PSPropertyExpression[]>]
[-InputObject <PSObject>]
[-StandardDeviation]
[-Sum]
[-AllStats]
[-Average]
[-Maximum]
[-Minimum]
[<CommonParameters>]
TextMeasure
Measure-Object
[[-Property] <PSPropertyExpression[]>]
[-InputObject <PSObject>]
[-Line]
[-Word]
[-Character]
[-IgnoreWhiteSpace]
[<CommonParameters>]
Description
A Measure-Object parancsmag kiszámítja bizonyos típusú objektumok tulajdonságértékeit.
Measure-Object a parancs paramétereitől függően háromféle mérést hajt végre.
A Measure-Object parancsmag számításokat végez az objektumok tulajdonságértékeivel kapcsolatban. A Measure-Object használatával megszámlálhatja a megadott tulajdonsággal rendelkező objektumokat, illetve megszámlálhatja az objektumokat. A Measure-Object segítségével kiszámíthatja a Minimális, Maximális, Összeg, StandardDeviation és Numerikus értékek átlagos. A sztring objektumok esetében a Measure-Object is használhatja a sorok, szavak és karakterek számának megszámlálásához.
Példák
1. példa: A címtárban lévő fájlok és mappák megszámlálása
Ez a parancs megszámolja az aktuális könyvtár fájljait és mappáit.
Get-ChildItem | Measure-Object
2. példa: A címtárban lévő fájlok mérése
Ez a parancs megjeleníti a Minimális, Maximálisés Az aktuális könyvtárban lévő összes fájl méretének összegzése, valamint a könyvtárban lévő fájlok átlagos mérete.
Get-ChildItem | Measure-Object -Property Length -Minimum -Maximum -Sum -Average
3. példa: Szöveg mérése szövegfájlban
Ez a parancs megjeleníti a Text.txt fájlban lévő karakterek, szavak és sorok számát.
A Nyers paraméter nélkül Get-Content sortömbként adja ki a fájlt.
Az első parancs Set-Content használ néhány alapértelmezett szöveg fájlhoz való hozzáadásához.
"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
4. példa: Megadott tulajdonságot tartalmazó objektumok mérése
Ez a példa megszámolja azoknak az objektumoknak a számát, amelyek DisplayName tulajdonságot rendelkeznek. Az első két parancs lekéri a helyi gépen található összes szolgáltatást és folyamatot. A harmadik parancs megszámolja a szolgáltatások és folyamatok összesített számát. Az utolsó parancs egyesíti a két gyűjteményt, és az eredményt Measure-Object.
A System.Diagnostics.Process objektum nem rendelkezik DisplayName tulajdonságmal, és a végleges számból kimarad.
$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
5. példa: CSV-fájl tartalmának mérése
Ez a parancs kiszámítja egy vállalat alkalmazottainak átlagos szolgálati éveit.
A ServiceYrs.csv fájl egy CSV-fájl, amely az egyes alkalmazottak alkalmazotti számát és szolgálati évét tartalmazza. A táblázat első sora EmpNofejlécsora, Years.
Ha a fájl importálásához Import-Csv használ, az eredmény egy PSCustomObjectEmpNo és Yearsjegyzettulajdonságokkal.
A Measure-Object segítségével kiszámíthatja ezeknek a tulajdonságoknak az értékeit, ugyanúgy, mint az objektumok bármely más tulajdonságát.
Import-Csv D:\test\serviceyrs.csv | Measure-Object -Property Years -Minimum -Maximum -Average
6. példa: Logikai értékek mérése
Ez a példa bemutatja, hogy a Measure-Object hogyan mérhetik a logikai értékeket.
Ebben az esetben a PSIsContainerlogikai tulajdonságot használja az aktuális könyvtárban található mappák (vs. fájlok) előfordulásának mérésére.
Get-ChildItem | Measure-Object -Property PSIsContainer -Maximum -Sum -Minimum -Average
Count : 126
Average : 0.0634920634920635
Sum : 8
Maximum : 1
Minimum : 0
StandardDeviation :
Property : PSIsContainer
7. példa: Mértéksztringek
Az alábbi példa a sorok számát méri, először egyetlen sztringet, majd több sztringet. Az új vonal karakter `n elválasztja a sztringeket több sorra.
# 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
8. példa: Az összes érték mérése
A PowerShell 6-tól kezdve a Measure-Object paramétere lehetővé teszi az összes statisztika közös mérését.
1..5 | Measure-Object -AllStats
Count : 5
Average : 3
Sum : 15
Maximum : 5
Minimum : 1
StandardDeviation : 1.58113883008419
Property :
9. példa: Mérés szkriptblokk tulajdonságaival
A PowerShell 6-tól kezdve Measure-Object támogatja ScriptBlock tulajdonságait. Az alábbi példa bemutatja, hogyan használható egy ScriptBlock tulajdonság a könyvtárban lévő összes fájl méretének megabájtban történő meghatározásához.
Get-ChildItem | Measure-Object -Sum {$_.Length/1MB}
10. példa: Mértékkivonatok
A PowerShell 6-tól kezdve Measure-Object támogatja kivonatoló bemenetének mérését. Az alábbi példa a 3 num objektum kulcsának legnagyobb értékét határozza meg.
@{num=3}, @{num=4}, @{num=5} | Measure-Object -Maximum Num
Count : 3
Average :
Sum :
Maximum : 5
Minimum :
StandardDeviation :
Property : num
11. példa: A szórás mérése
A PowerShell 6-tól kezdve Measure-Object támogatja a StandardDeviation paramétert. Az alábbi példa az összes folyamat által használt PROCESSZOR szórását határozza meg. A nagy eltérés azt jelezné, hogy a legtöbb PROCESSZORt használó folyamatok kis száma.
Get-Process | Measure-Object -Average -StandardDeviation CPU
Count : 303
Average : 163.032384488449
Sum :
Maximum :
Minimum :
StandardDeviation : 859.444048419069
Property : CPU
12. példa: Mérték helyettesítő karakterek használatával
A PowerShell 6-tól kezdve Measure-Object támogatja az objektumok mérését helyettesítő karakterek használatával a tulajdonságnevekben. Az alábbi példa a lapszámozott memória bármely típusának maximális használatát határozza meg egy folyamatcsoport között.
Get-Process | Measure-Object -Maximum *paged*memory*size
Count : 303
Average :
Sum :
Maximum : 735784
Minimum :
StandardDeviation :
Property : NonpagedSystemMemorySize
Count : 303
Average :
Sum :
Maximum : 352104448
Minimum :
StandardDeviation :
Property : PagedMemorySize
Count : 303
Average :
Sum :
Maximum : 2201968
Minimum :
StandardDeviation :
Property : PagedSystemMemorySize
Count : 303
Average :
Sum :
Maximum : 719032320
Minimum :
StandardDeviation :
Property : PeakPagedMemorySize
Paraméterek
-AllStats
Azt jelzi, hogy a parancsmag megjeleníti a megadott tulajdonságok összes statisztikáját.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
GenericMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Average
Azt jelzi, hogy a parancsmag a megadott tulajdonságok átlagértékét jeleníti meg.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
GenericMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Character
Azt jelzi, hogy a parancsmag megszámolja a bemeneti objektumokban lévő karakterek számát.
Megjegyzés:
A Word, Char és Line kapcsolók minden bemeneti objektumon belül, valamint bemeneti objektumok között. Lásd a 7. példát.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
TextMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-IgnoreWhiteSpace
Azt jelzi, hogy a parancsmag figyelmen kívül hagyja a szóközt a karakterszámban. Alapértelmezés szerint a szabad terület nem lesz figyelmen kívül hagyva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
TextMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-InputObject
Megadja a mérendő objektumokat. Adjon meg egy változót, amely tartalmazza az objektumokat, vagy írjon be egy parancsot vagy kifejezést, amely lekéri az objektumokat.
Ha az InputObject paramétert Measure-Objecthasználja a piping parancs eredményei Measure-Objecthelyett, a rendszer egyetlen objektumként kezeli az InputObject értéket.
Javasoljuk, hogy Measure-Object használjon a folyamatban, ha egy objektumgyűjteményt szeretne mérni annak alapján, hogy az objektumok meghatározott tulajdonságokkal rendelkeznek-e.
Paramétertulajdonságok
| Típus: | PSObject |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Line
Azt jelzi, hogy a parancsmag megszámolja a bemeneti objektumok sorainak számát.
Megjegyzés:
A Word, Char és Line kapcsolók minden bemeneti objektumon belül, valamint bemeneti objektumok között. Lásd a 7. példát.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
TextMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Maximum
Azt jelzi, hogy a parancsmag megjeleníti a megadott tulajdonságok maximális értékét.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
GenericMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Minimum
Azt jelzi, hogy a parancsmag megjeleníti a megadott tulajdonságok minimális értékét.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
GenericMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Property
Egy vagy több mérendő tulajdonságot ad meg. Ha nem ad meg semmilyen más mértéket, Measure-Object megszámlálja a megadott tulajdonságokkal rendelkező objektumokat.
A tulajdonság paraméter értéke új számított tulajdonság lehet. A számított tulajdonságnak szkriptblokknak kell lennie. További információkért lásd a about_Calculated_Propertiesrészt.
Paramétertulajdonságok
| Típus: | |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 0 |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-StandardDeviation
Azt jelzi, hogy a parancsmag megjeleníti a megadott tulajdonságok értékeinek szórását.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
GenericMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Sum
Azt jelzi, hogy a parancsmag megjeleníti a megadott tulajdonságok értékeinek összegét.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
GenericMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Word
Azt jelzi, hogy a parancsmag megszámolja a bemeneti objektumokban lévő szavak számát.
Megjegyzés:
A Word, Char és Line kapcsolók minden bemeneti objektumon belül, valamint bemeneti objektumok között. Lásd a 7. példát.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
TextMeasure
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
PSObject
Ehhez a parancsmaghoz csövezhet objektumokat.
Kimenetek
GenericMeasureInfo
Ez a parancsmag alapértelmezés szerint egy GenericMeasureInfo objektumot ad vissza.
TextMeasureInfo
A Word paraméter használatakor ez a parancsmag egy TextMeasureInfo objektumot ad vissza.
Jegyzetek
A PowerShell a következő aliasokat tartalmazza Measure-Object:
- Minden platform:
measure
A PowerShell 7.3-tól kezdődően Measure-Object már nem ad vissza hibát a mért tulajdonságot hiányzó objektumok feldolgozásakor, kivéve, ha StrictModefut. A StrictModeMeasure-Object egy System.Management.Automation.PSArgumentException ad vissza egy olyan objektum feldolgozásakor, amely nem tartalmazza a megadott tulajdonságot.