我经常发现必须将命令括在括号中,然后使用属性访问运算符(点语法)来获取属性的值。这很烦人,因为当我只想继续输入我所在的位置时,我必须回到行的开头。当我在一组更大的管道命令中间时,这尤其令人讨厌。
如果我有以下命令
Get-PSProvider FileSystem
Run Code Online (Sandbox Code Playgroud)
并且我想获得该Drives属性,我必须首先将整个命令括在括号中:
(Get-PSProvider FileSystem).Drives
Run Code Online (Sandbox Code Playgroud)
有没有更快的方法来获得单个财产的价值?
Ryn*_*ant 15
您可以使用Select-Object -ExpandProperty <property name>. 这可以使用别名select并只输入属性名称的一部分来缩短:
Get-PSProvider FileSystem| select -exp Drives
Run Code Online (Sandbox Code Playgroud)
此方法的另一个好处是您可以访问多个对象的单个属性。
这不会返回任何内容(更新:这在 PowerShell v3 中有效。):
(Get-PSProvider).Drives
Run Code Online (Sandbox Code Playgroud)
但是,这将返回所有提供程序的驱动器:
Get-PSProvider| select -exp Drives
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13894 次 |
| 最近记录: |