如何使用 PowerShell 在文件中进行搜索?
若要搜索 PowerShell 中文件中的内容,你需要先使用 **Get-Content** 命令从文件中获取内容,然后你需要添加 **Select-String** 流水线命令。在下例中,我们需要搜索包含 Get 单词的行。
PS C:\WINDOWS\system32> Get-Content D:\Temp\PowerShellaliases.txt | Select-String -Pattern Get Alias cat -> Get-Content Alias dir -> Get-ChildItem Alias gal -> Get-Alias Alias gbp -> Get-PSBreakpoint Alias gc -> Get-Content Alias gcb -> Get-Clipboard 3.1.0.0 Microsoft.PowerShell.Management Alias gci -> Get-ChildItem Alias gcm -> Get-Command Alias gcs -> Get-PSCallStack Alias gdr -> Get-PSDrive Alias ghy -> Get-History Alias gi -> Get-Item Alias gin -> Get-ComputerInfo 3.1.0.0 Microsoft.PowerShell.Management Alias gjb -> Get-Job Alias gl -> Get-Location Alias gm -> Get-Member Alias gmo -> Get-Module Alias gp -> Get-ItemProperty Alias gps -> Get-Process Alias gpv -> Get-ItemPropertyValue
你可以使用多个模式搜索结果。
示例
Get-Content D:\Temp\PowerShellaliases.txt | Select-String -Pattern Get,Set
输出
Get-Content D:\Temp\PowerShellaliases.txt | Select-String -Pattern Get,Set Alias gsnp -> Get-PSSnapin Alias gsv -> Get-Service Alias gtz -> Get-TimeZone Alias gu -> Get-Unique Alias gv -> Get-Variable Alias gwmi -> Get-WmiObject Alias h -> Get-History Alias history -> Get-History Alias ls -> Get-ChildItem Alias ps -> Get-Process Alias pwd -> Get-Location Alias sal -> Set-Alias Alias sbp -> Set-PSBreakpoint Alias sc -> Set-Content Alias scb -> Set-Clipboard Alias set -> Set-Variable Alias si -> Set-Item Alias sl -> Set-Location Alias sp -> Set-ItemProperty Alias stz -> Set-TimeZone
广告