Measure-Object
Nesnelerin sayısal özelliklerini ve metin dosyaları gibi dize nesnelerindeki karakterleri, sözcükleri ve satırları hesaplar.
Syntax
Measure-Object
[[-Property] <PSPropertyExpression[]>]
[-InputObject <PSObject>]
[-StandardDeviation]
[-Sum]
[-AllStats]
[-Average]
[-Maximum]
[-Minimum]
[<CommonParameters>]
Measure-Object
[[-Property] <PSPropertyExpression[]>]
[-InputObject <PSObject>]
[-Line]
[-Word]
[-Character]
[-IgnoreWhiteSpace]
[<CommonParameters>]
Description
cmdlet'i Measure-Object
belirli nesne türlerinin özellik değerlerini hesaplar.
Measure-Object
komutundaki parametrelere bağlı olarak üç tür ölçüm gerçekleştirir.
cmdlet'i Measure-Object
, nesnelerin özellik değerleri üzerinde hesaplamalar yapar. Belirtilen özelliğe sahip nesneleri saymak veya nesneleri saymak için kullanabilirsinizMeasure-Object
. Sayısal değerlerin Minimum, Maksimum, Toplam, StandardDeviation ve Ortalama değerlerini hesaplamak için de kullanabilirsinizMeasure-Object
. Dize nesneleri için, satır, sözcük ve karakter sayısını saymak için de kullanabilirsinizMeasure-Object
.
Örnekler
Örnek 1: Dizindeki dosya ve klasörleri sayma
Bu komut geçerli dizindeki dosyaları ve klasörleri sayar.
Get-ChildItem | Measure-Object
Örnek 2: Dizindeki dosyaları ölçme
Bu komut geçerli dizindeki tüm dosyaların boyutlarının Minimum, Maksimum ve Toplam değerlerini ve dizindeki bir dosyanın ortalama boyutunu görüntüler.
Get-ChildItem | Measure-Object -Property length -Minimum -Maximum -Sum -Average
Örnek 3: Metin dosyasındaki metni ölçme
Bu komut, Text.txt dosyasındaki karakter, sözcük ve satır sayısını görüntüler.
Raw parametresi olmadan, Get-Content
dosyayı bir satır dizisi olarak verir.
İlk komut, bir dosyaya bazı varsayılan metinler eklemek için kullanır Set-Content
.
"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
Örnek 4: Belirtilen Özelliği içeren nesneleri ölçme
Bu örnek , DisplayName özelliğine sahip nesnelerin sayısını sayar. İlk iki komut yerel makinedeki tüm hizmetleri ve işlemleri alır. Üçüncü komut, birleştirilmiş hizmet ve işlem sayısını sayar. Son komut iki koleksiyonu birleştirir ve sonucu öğesine eşler Measure-Object
.
System.Diagnostics.Process nesnesinin DisplayName özelliği yoktur ve son sayının dışında bırakılır.
$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
Örnek 5: CSV dosyasının içeriğini ölçme
Bu komut, bir şirketin çalışanlarının ortalama hizmet yıllarını hesaplar.
Dosya ServiceYrs.csv
, her çalışanın çalışan numarasını ve hizmet yıllarını içeren bir CSV dosyasıdır. Tablodaki ilk satır EmpNo, Years üst bilgi satırıdır.
Dosyasını içeri aktarmak için kullandığınızda Import-Csv
sonuç, EmpNo ve Years not özelliklerine sahip bir PSCustomObject'tir.
Bir nesnenin diğer özellikleri gibi bu özelliklerin değerlerini hesaplamak için kullanabilirsiniz Measure-Object
.
Import-Csv d:\test\serviceyrs.csv | Measure-Object -Property years -Minimum -Maximum -Average
Örnek 6: Boole değerlerini ölçme
Bu örnekte Boole değerlerinin nasıl Measure-Object
ölçülebileceği gösterilmektedir.
Bu durumda, geçerli dizindeki klasörlerin (dosyalara karşı) oranını ölçmek için PSIsContainerBoolean özelliğini kullanır.
Get-ChildItem | Measure-Object -Property psiscontainer -Maximum -Sum -Minimum -Average
Count : 126
Average : 0.0634920634920635
Sum : 8
Maximum : 1
Minimum : 0
StandardDeviation :
Property : PSIsContainer
Örnek 7: Ölçü dizeleri
Aşağıdaki örnek satır sayısını, önce tek bir dizeyi, sonra da birkaç dizeyi ölçer. Yeni satır karakteri `n
dizeleri birden çok satıra ayırır.
# 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
Örnek 8: Tüm değerleri ölçme
PowerShell 6'nın AllStats parametresi Measure-Object
, tüm istatistikleri birlikte ölçmenizi sağlar.
1..5 | Measure-Object -AllStats
Count : 5
Average : 3
Sum : 15
Maximum : 5
Minimum : 1
StandardDeviation : 1.58113883008419
Property :
Örnek 9: Scriptblock özelliklerini kullanarak ölçme
PowerShell 6'da başlayarak ScriptBlockMeasure-Object
özelliklerini destekler. Aşağıdaki örnekte, megabayt cinsinden bir dizindeki tüm dosyaların boyutunu belirlemek için ScriptBlock özelliğinin nasıl kullanılacağı gösterilmektedir.
Get-ChildItem | Measure-Object -Sum {$_.Length/1MB}
Örnek 10: Karma tablo ölçme
PowerShell 6'da başlayarak karma Measure-Object
tablo girişinin ölçülebilir. Aşağıdaki örnek, 3 karma tablo nesnesinin num
anahtarı için en büyük değeri belirler.
@{num=3}, @{num=4}, @{num=5} | Measure-Object -Maximum Num
Count : 3
Average :
Sum :
Maximum : 5
Minimum :
StandardDeviation :
Property : num
Örnek 11: Standart Sapması Ölçme
PowerShell 6'da Measure-Object
başlayarak parametresini -StandardDeviation
destekler. Aşağıdaki örnek, tüm işlemler tarafından kullanılan CPU için standart sapması belirler. Büyük bir sapma, en çok CPU kullanan az sayıda işlemi gösterir.
Get-Process | Measure-Object -Average -StandardDeviation CPU
Count : 303
Average : 163.032384488449
Sum :
Maximum :
Minimum :
StandardDeviation : 859.444048419069
Property : CPU
Örnek 12: Joker karakter kullanarak ölçme
PowerShell 6'da başlayarak, Measure-Object
özellik adlarında joker karakterler kullanarak nesne ölçümünü destekler. Aşağıdaki örnek, bir dizi işlem arasında herhangi bir disk belleği belleği kullanımı türünün üst sınırını belirler.
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
Parametreler
-AllStats
Cmdlet'in belirtilen özelliklerin tüm istatistiklerini görüntülediğini gösterir.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Average
Cmdlet'in belirtilen özelliklerin ortalama değerini görüntülediğini gösterir.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Character
Cmdlet'in giriş nesnelerindeki karakter sayısını saydığını gösterir.
Not
Word, Char ve Line anahtarları hem giriş nesneleri arasında hem de her giriş nesnesinin içinde sayılır. Bkz. Örnek 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IgnoreWhiteSpace
Cmdlet'in karakter sayılarındaki boşluğu yoksaydığını gösterir. Varsayılan olarak, boşluk yoksayılmaz.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Ölçülecek nesneleri belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın.
Komutun sonuçlarını Measure-Object
öğesine göndermek yerine ile Measure-Object
InputObject parametresini kullandığınızda, InputObject değeri tek bir nesne olarak değerlendirilir.
Nesnelerin tanımlı özelliklerde belirli değerlere sahip olup olmadığına bağlı olarak bir nesne koleksiyonunu ölçmek istiyorsanız işlem hattında kullanmanız Measure-Object
önerilir.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Line
Cmdlet'in giriş nesnelerindeki satır sayısını saydığını gösterir.
Not
Word, Char ve Line anahtarları hem giriş nesneleri arasında hem de her giriş nesnesinin içinde sayılır. Bkz. Örnek 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Maximum
Cmdlet'in belirtilen özelliklerin en yüksek değerini görüntülediğini gösterir.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Minimum
Cmdlet'in belirtilen özelliklerin en düşük değerini görüntülediğini gösterir.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Property
Ölçülecek bir veya daha fazla özelliği belirtir. Başka ölçü belirtmezseniz, Measure-Object
belirttiğiniz özelliklere sahip nesneleri sayar.
Property parametresinin değeri yeni bir hesaplanan özellik olabilir. Hesaplanan özellik bir betik bloğu olmalıdır. Daha fazla bilgi için bkz. about_Calculated_Properties.
Type: | PSPropertyExpression[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-StandardDeviation
Cmdlet'in belirtilen özelliklerin değerlerinin standart sapması görüntülendiğini gösterir.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Sum
Cmdlet'in belirtilen özelliklerin değerlerinin toplamını görüntülediğini gösterir.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Word
Cmdlet'in giriş nesnelerindeki sözcük sayısını saydığını gösterir.
Not
Word, Char ve Line anahtarları hem giriş nesneleri arasında hem de her giriş nesnesinin içinde sayılır. Bkz. Örnek 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Girişler
Nesneleri öğesine Measure-Object
yöneltebilirsiniz.
Çıkışlar
Word parametresini kullanırsanız bir Measure-Object
TextMeasureInfo nesnesi döndürür.
Aksi takdirde, bir GenericMeasureInfo nesnesi döndürür.