如何搜索(regexp)字符串匹配的别名?

时间:2017-04-20 12:37:23

标签: powershell powershell-v5.0

目标 - 找到PowerShell执行此操作的方法:

alias | findstr /i ">some_string<"

示例:我想查找包含不区分大小写的字符串的所有别名&#34; web&#34;。

  • 非惯用方式:alias | findstr /i "web"
  • PS惯用方式:alias | where name -icont "web" # Or something similar?但这不起作用......

注意:我使用的是PSv5.1。

我做错了什么?

2 个答案:

答案 0 :(得分:2)

这听起来像是在寻找定义(别名指向的命令)包含字符串web的别名。

你可以这样做:

Get-Alias -Definition *web*

如果是需要包含web的别名,请改用-Name参数:

Get-Alias -Name *web*

可能值得一提的是,alias命令解析为Get-Alias,因此功能相同。 alias -def *web*也可以使用

答案 1 :(得分:0)

Mathias的答案是正确的方法。但是,使用Where-Object cmdlet的错误在于您要按Name属性进行过滤,而不想按Definition属性进行过滤:

Get-Alias | Where Definition -Match "web"