jos*_*ley 6 powershell escaping
我想Test-Path在PowerShell中运行此注册表路径,但它包含一个星号,它在注册表中有效,但在Windows路径中无效.
问题是,当我通过它时,Test-Path将星号视为外卡,因此这需要非常长的时间,因为它检查所有子路径Classes并且不是我想要测试的任何东西.
有什么办法可以正确传递那个星号吗?一些逃生机制?
Write-Host "Begin"
Test-Path "HKLM:\SOFTWARE\Classes\*\shell\Some shell extension"
Write-Host "End"
Run Code Online (Sandbox Code Playgroud)
使用该-LiteralPath参数可防止通配符/通配符匹配.
-LiteralPath <字符串[]>
指定要测试的路径.与Path不同,LiteralPath参数的值与键入的完全一样.没有字符被解释为通配符.如果路径包含转义字符,请将其用单引号括起来.单引号告诉Windows PowerShell不要将任何字符解释为转义序列.
Write-Host "Begin"
Test-Path -LiteralPath "HKLM:\SOFTWARE\Classes\*\shell\Some shell extension"
Write-Host "End"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
939 次 |
| 最近记录: |