如果我在PowerShell中运行以下命令,它将向我返回一个包含WorkingSet属性和的对象:
PS > get-process chrome | measure-object WorkingSet -sum
Count : 36
Average :
Sum : 2377129984
Maximum :
Minimum :
Property : WorkingSet如果我只想返回Sum值,我找到的唯一方法是:
PS > $a = get-process chrome | measure-object WorkingSet -sum
PS > $a.Sum
2359980032有没有办法通过管道将原始命令传递给其他命令,这样我就可以在一个步骤中返回整数?如下所示:
PS > get-process chrome | measure-object WorkingSet -sum | {some other command}发布于 2011-09-14 04:35:22
是,使用Select-Object
Get-Process chrome | Measure-Object WorkingSet -sum | Select-Object -expand SumSelect-当只需要原始对象的一些属性时,使用对象。它创建一个新对象,并将所需的属性复制到新对象中。
Get-Process | Select-Object -property ProcessName, Handles如果需要提取值(从一个属性中),可以使用参数-expandProperty而不是-property
Get-Process | Select-Object -expand ProcessName请注意,您可以计算返回值:
get-process | Select-Object -property @{Name='descr'; Expression={"{0} - {1}" -f $_.ProcessName, $_.Handles }}发布于 2011-09-14 04:36:06
只需使用括号将管道命令括起来:
(get-process chrome | measure-object WorkingSet -sum).sum通常,PowerShell将括号中的任何内容视为可以通过属性/方法引用的对象。
发布于 2011-09-14 04:36:55
另一种方式:
(get-process chrome | measure-object WorkingSet -sum).sumhttps://stackoverflow.com/questions/7408111
复制相似问题