对于以下 PowerShell 管道(基于此答案):
(Get-Command Get-ChildItem).Parameters.Values |
where aliases |
select Aliases, Name
我得到一个别名列表和相应的非缩写开关参数,如下所示:
Aliases Name
------- ----
{ad, d} Directory
{af} File
{ah, h} Hidden
{ar} ReadOnly
{as} System
{db} Debug
{ea} ErrorAction
{ev} ErrorVariable
{infa} InformationAction
{iv} InformationVariable
{ob} OutBuffer
{ov} OutVariable
{PSPath} LiteralPath
{pv} PipelineVariable
{s} Recurse
{usetx} UseTransaction
{vb} Verbose
{wa} WarningAction
{wv} WarningVariable
当我更改where Aliases
为where Aliases -eq null
查看那些没有定义别名的开关参数时,我没有返回任何结果。我试过where Aliases -eq {}
了,但这也没有产生任何结果。我知道存在没有别名的开关参数;例如Force, Depth, Attributes
等等。
上面的“等于”机制如何工作?
Aliases
永远是一个集合。利用好吧,众所周知,有多种方法可以在 PowerShell 中完成工作。
这是为您的用例获取结果的一些不同方法。然而,JosefZ 的回答更为直接。这都是偏好问题。