Board logo

标题: [原创教程] PowerShell 技能连载 - 用 Group-Object 来创建哈希表 [打印本页]

作者: victorwoo    时间: 2014-8-17 20:37     标题: PowerShell 技能连载 - 用 Group-Object 来创建哈希表

原始链接:PowerShell 技能连载 - 用 Group-Object 来创建哈希表
发表日期:2014-08-12


适用于所有 PowerShell 版本

`Group-Object` 能把对象输送到管道中,然后在一个管道中把属性相同的对象排在一起。

这个功能十分有用,特别是当您用 `Group-Object` 来返回哈希表时。它将生成一个按服务状态分组的哈希表:
  1. $hash = Get-Service |
  2.   Group-Object -Property Status -AsHashTable -AsString
复制代码
$hash.Running
    $hash.Stopped

可以用任何想要的属性来分组。这个例子将用三个组来分组文件:一组为小文件,一个组为中等文件,另一个组位大文件。
  1. $code =
  2. {
  3.   if ($_.Length -gt 1MB)
  4.   {'huge'}
  5.   elseif ($_.Length -gt 10KB)
  6.   {'average'}
  7.   else
  8.   {'tiny'}
  9. }
  10. $hash = Get-ChildItem -Path c:\windows |
  11.   Group-Object -Property $code -AsHashTable -AsString
  12. #$hash.Tiny
  13. $hash.Huge
复制代码
本文国际来源:Use Group-Object to Create Hash Tables




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2