PowerShell 技能连载 - 探索 Select-Object
Select-Object
是一个基础的 cmdlet,多数 PowerShell 用户都经常使用它。然而,它有一些限制,不太为大家所知。
Select-Object
最常见的形式是选择可见的属性。如果不使用 Select-Object
,那么 PowerShell 将自行决定该显示哪些属性,以及它们的格式:
1 | Get-ChildItem -Path c:\windows\system32 -Filter *.dll |
如果加上了 Select-Object
,您可以自行决定哪些属性可见。例如:
1 | Get-ChildItem -Path c:\windows\system32 -Filter *.dll | |
Select-Object
还可以将属性的内容向上提升一层。在前一个例子中,VersionInfo
包含另一个对象。通过使用 -ExpandProperty
属性,您可以将它的属性向上提升一层:
1 | Get-ChildItem -Path c:\windows\system32 -Filter *.dll | |
要查看合并属性的实际结果,请将结果再次发送给 Select-Object
,因为 PowerShell 默认情况下只显示其中的一部分结果:
1 | Get-ChildItem -Path c:\windows\system32 -Filter *.dll | |
除了 “*” 之外,您还可以用逗号分隔的列表来决定要查看的属性:
1 | Get-ChildItem -Path c:\windows\system32 -Filter *.dll | |
PowerShell 技能连载 - 探索 Select-Object
http://blog.vichamp.com/2018/02/13/exploiting-select-object/