我能用Windows PowerShell做什么:基本统计计算

注:本篇文章,未在联系作者以及得到许可的情况下, 禁止以任何形式进行转载。

By:Anders      Mail:[email protected]        

基本统计计算

Measure-Object cmdlet提供了一种快速生成统计计算(计数,平均金额,最低和最高值)为对象。举例来说,假设我们有以下的文本文件,列出其中的用户姓名和他们的分数… …好,不错 :
Name,Score
Dan K. Bacon Jr.,
64
Jean Philippe Bagel,
89
Erzsébet Balázs,
45
Martin Bankov,
64
Peter Bankov,
33
Angel Barbariol a,
89
David Barber,
88
Rob Barker,
55
Miklós Barkóczi,
86
Dave Barnett,
56
Josh Barnhill,
75
Adam Barr,
33
Paula Barreto de Mattos,
89
Gytis M. Barzdukas,
62
Shai Bassli,
87
Pilar Colome Bassols,
24
Tomasz Bator,
67
Shaun Beasley,
77
Mark Bebbington,
35
Anna Bedecs,
78
Parry Bedi,
86
Ann Beebe,
64
Dick Beekman,
74
Balázs Belinszki,
79
Kostadin Belishky,
55
Mason Bendixen,
64
Almudena Benito,
33
Ido Ben
- Sachar, 56
Wanida Benshoof,
81

假设你想计算分数,平均分数,最高的和最低的评分。相信与否,你要用的只是一个的命令:

Import - Csv c:/scripts test.txt  |  Measure - Object score  - ave  - max  - min

这个命令本身也是相当简单的。我们使用Measure-Object cmdlet 格式输入数据到文本文件,这一数据,然后以Import-Csv cmdlet 关于管道这一方面,我们使用Measure-Object跟随参数名称或者项目(在这种情况下,分数),我们希望产生的统计数字。注意,这也包含–ave, -max, 和–min 参数。(用out-sum来退出)那是重要的:除计数(项目的数量在数据里),你只会得到那些包含在统计里的命令。

返回的数据像这个样子:

Count    :  29
Average  : 
65.1034482758621
Sum      :
Maximum  : 
89
Minimum  : 
24
Property : Score

留心一下,Measure-Obejct 只是产生统计,它不用做什么事情就能展示给人们看,也就是说,五个最佳成绩。如果你想要那种信息,你需要什么数据,那么就使用Select-Object cmdlet ,像这样:

(译者注:英文原文将 -descending 误写成为 -ascending,这里译者已修改)

Import - Csv c:/scripts est.txt  |  Sort - Object score  -de scending  |  Select - Object  - first  5

这里是命令返回的结果:

Name                                    Score
----                                      -----
Paula Barreto de Mattos                 
89
Angel Barbariol a                       
89
Jean Philippe Bagel                     
89
David Barber                            
88
Shai Bassli                             
87

而且很不错,是的,你能确定五名最低的分数:只要使用刚才那同一个命令,但这种排列(默认) ,而顺序不是为:

Import - Csv c:/scripts test.txt  |  Sort - Object score  |  Select - Object  - first  5

也许这是一场高尔夫比赛,在这种情况下这5人的确不错:

Name                                    Score
----                                      -----
Pilar Colome Bassols                    
24
Peter Bankov                            
33
Almudena Benito                         
33
Adam Barr                               
33
Mark Bebbington                         
35

 

 

 

 

英文原文:http://www.microsoft.com/technet/scriptcenter/topics/msh/cmdlets/measure-object.mspx

你可能感兴趣的:(PowerShell)