在我的 PowerShell 脚本中,我在多个文件上运行 Select-String,寻找通过变量 ($id) 传递给它的字符串:
foreach ($file in (ls "path\to\files")) {
$found = $false
$found = Select-String -Path $file $id -Quiet
if ($found) {
break
}
}
不幸的是,$id 变量有时类似于“\C”或“\T”,Select-String 试图将其解释为转义序列。这些不是有效的转义序列,因此 Select-String 会引发错误。它们不是转义序列(例如,它可能是文件路径的一部分,例如“C:\Test”),那么如何防止 PowerShell/Select-String 将它们解释为这样呢?我试过在 $id 周围使用括号,但没有成功。