PowerShell 技能连载 - 快速查找脚本
要在“我的文档”文件夹的任意位置中快速定位一个 PowerShell 脚本,请试试这个 Find-Script
函数:
#requires -Version 3
function Find-Script
{
param
(
[Parameter(Mandatory = $true)]
$SearchPhrase,
$Path = [Environment]::GetFolderPath('MyDocuments')
)
Get-ChildItem -Path $Path -Filter *.ps1 -Recurse -ErrorAction SilentlyContinue |
Select-String -Pattern $SearchPhrase -List |
Select-Object -Property Path, Line |
Out-GridView -Title "All Scripts containing $SearchPhrase" -PassThru |
ForEach-Object -Process {
ise $_.Path
}
}
像这样运行:
Find-Script 'childitem'
这将返回一个在您的文档文件夹中包含搜索关键词的所有 PowerShell 脚本。当您在网格视图窗口中选择了某些脚本并点击确认按钮后,这些脚本将会自动由 PowerShell ISE 打开。
要设置一个不同的搜索跟路径,请使用 -Path
参数。通过这种方式,您可以很容易地在您的 USB 媒体或是网络路径中搜索。
PowerShell 技能连载 - 快速查找脚本