You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell:使用Select-String在对象列表中快速查找字符串

跨平台简便查找PowerShell别名对象的方法

针对你遇到的问题,这里提供两种跨平台、无需依赖外部工具且不要求提前知晓属性名的简便实现方法:

方法1:直接管道命令实现

通过遍历对象的所有属性值进行匹配,一行命令完成:

Get-Alias | Where-Object { $_.PSObject.Properties.Value -match 'Get-' }
  • 原理:利用$_.PSObject.Properties获取每个别名对象的所有属性,检查任意属性的值是否包含目标字符串Get-
  • 优势:完全基于PowerShell原生语法,跨Windows、Linux、macOS的PowerShell Core都能运行;保留对象完整性,可后续继续操作;无需提前指定属性名,通用性强。

方法2:封装为自定义函数(适合高频使用)

如果需要频繁执行这类查找,可以封装成一个简短的函数,进一步简化调用:

function Find-Object {
    param(
        [Parameter(ValueFromPipeline)]$InputObject,
        [string]$Pattern
    )
    process {
        if ($InputObject.PSObject.Properties.Value -match $Pattern) {
            $InputObject
        }
    }
}

调用时只需:

Get-Alias | Find-Object -Pattern 'Get-'

这个函数不仅适用于别名对象,其他任意PowerShell对象列表的字符串查找都能复用。

内容的提问来源于stack exchange,提问作者Dmitrij Drandarov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 06:05:18