关闭

Select-Object 帮助信息

标签: 扩展stringobjectnull存储c
2177人阅读 评论(0) 收藏 举报
分类:
 
如下说明是翻译: help Select-Object 产生的帮助信息.
译者: Edengundam(马涛)
 
Select-Object
 
大纲
从一个或多个对象上选取指定的属性. 它也可以用于去除数组中重复的元素, 或者从数组开头或结尾选取制定数量的对象.
 
语法
Select-Object [[-property] <Object[]>] [-excludeProperty <string[]>] [-expandProperty <string>] [-first <int>] [-last <int>] [-unique] [-inputObject <psobject>] [<CommonParameters>]
 
详细描述
从一个或多个对象上选取指定的属性. 它也可以用于去除数组中重复的元素, 或者从数组开头或结尾选取制定数量的对象.
 
如果你使用Select-Object筛选指定的属性, 它将会创建一个新的对象, 并将输入对象的属性及其值拷贝到新对象上. 你可以使用参数First, LastUnique从输入对象的数组中选取特定的对象. 需要更强大的过滤对象功能, 请使用Where-Object cmdlet.
 
你可以使用Select-Object 将属性的累积值添加到对象上. 你需要为参数Property指定一个哈希表来完成这个功能. 此哈希表必须包含两个键: NameExpression. 将结果属性名称存储于键Name. 将对属性值进行计算的脚本块存储于键Expression.
 
参数
 
-property <Object[]>
指定选择操作的属性. 你可以在此参数中使用通配符.
 
强制参数?
false
参数位置?
1
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
true
 
-excludeProperty <string[]>
制定被忽略的属性名称. 被忽略的属性名称将会从已经被选择到属性列表中移除.
 
强制参数?
false
参数位置?
named
默认值
null
允许从管道绑定输入?
false
允许通配符扩展?
true
 
-expandProperty <string>
指定一个筛选的属性, 并尝试对该属性信息进行展开(显示更多有用信息). 如果制定了一个数组的属性, 数组的每个值都会被展开.
 
强制参数?
false
参数位置?
named
默认值
null
允许从管道绑定输入?
false
允许通配符扩展?
true
 
-first <int>
指定从输入对象数组的开头筛选的对象数量.
 
强制参数?
false
参数位置?
named
默认值
0
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-last <int>
指定从输入对象数组的末尾筛选的对象数量.
 
强制参数?
false
参数位置?
named
默认值
0
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-unique <SwitchParameter>
当指定此参数时, 具有相同属性和值(这些属性被用来进行筛选)的对象将被划分到一个子集中, 最终只会将子集中的一个成员输出.
 
强制参数?
false
参数位置?
named
默认值
False
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-inputObject <psobject>
指定输入给此命令的对象.
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
true (根据值)
允许通配符扩展?
false
 
<公共参数>
此命令支持公共参数: -Verbose, -Debug, -ErrorAction, -ErrorVariable, and -OutVariable. 更多信息, 输入, "get-help about_commonparameters".
 
输入类型
Object[]
 
返回类型
PSObjects
 
注意
 
更多信息, 输入"Get-Help Select-Object  -detailed".需要技术信息, 输入"Get-Help Select-Object -full".
 
如果需要为该命令提供多个参数, 请使用逗号进行分隔. 例如, "<parameter-name> <value1>, <value2>". 你可以使用Select-Object内建别名"select". 需要更多信息, 查看 About_Alias.
 
1
 
C:/PS>get-process | select-object ProcessName,Id,WS
 
此命令将显示进程的列表. 只有进程的名称, ID, 工作集(WS)属性被输出.
 
2
 
C:/PS>get-process | select-object processname -expandproperty modules |
format-list
 
此命令显示计算机上运行进程使用模块的信息. 它使用参数ExpandProperty显示modules属性中的详细信息.
 
ProcessName   : 00THotkey
Size  : 256
Company   : TOSHIBA Corporation
FileVersion   : 1, 0, 0, 27
ProductVersion: 6, 2, 0, 0
Description   : THotkey
Product   : TOSHIBA THotkey
ModuleName: 00THotkey.exe
FileName  : C:/WINDOWS/system32/00THotkey.exe
BaseAddress   : 4194304
 
3
 
C:/PS>get-process | sort-object -property WS | select-object -Last 5
 
此命令将会显示占用内存最多的5个进程. Sort-Object cmdlet用来根据进程占用的内存(Working Set)进行排序, Select-Object cmdlet将选择数组中最后5个对象.
 
Handles  NPM(K)PM(K)  WS(K)  VS(M)   CPU(s)     Id   ProcessName
-------  -----------  -----  -----   ------     --   -----------
   2866  32033432     45764    203   222.41   1292   svchost
    577  1723676      50516    265    50.58   4388   WINWORD
    826  1175448      76712    188    19.77   3780   Ps
   1367  1473152      88736    216     61.6   9676   Ps
   1612  4466080      92780    380   900.59   6132   INFOPATH
 
4
 
C:/PS>$processes = get-process | select-object ProcessName,@{Name="Start Day";Expression = {$_.StartTime.DayOfWeek}}
 
此命令显示进程的名称和启动的时间. Processname就是命令Get-Process cmdlet输出的对象的属性, 属性start day是一个通过计算取得结果.
 
Name       StartDay
----       --------
alg        Wednesday
ati2evxx   Wednesday
ati2evxx   Thursday
...
 
5
 
C:/PS>"a","b","c","a","a","a" | select-object -unique
 
此命令将显示字符数组中去重后的结果.
 
a
b
c
 
相关链接
Where-Object
Group-Object
Sort-Object
 
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:443368次
    • 积分:7091
    • 等级:
    • 排名:第3294名
    • 原创:110篇
    • 转载:10篇
    • 译文:138篇
    • 评论:87条
    最新评论