Nel mio script PowerShell, sto correndo Select-String più di un certo numero di file, alla ricerca di una stringa passata in esso tramite una variabile ($ id):Come ignorare le sequenze di escape memorizzate nella variabile stringa PowerShell?
foreach ($file in (ls "path\to\files")) {
$found = $false
$found = Select-String -Path $file $id -Quiet
if ($found) {
break
}
}
Purtroppo, la variabile id $ a volte le cose come "\ C" o "\ T", che Select-String tenta di interpretare come sequenze di escape. Queste non sono sequenze di escape valide, quindi Select-String genera un errore. Non sono intese come sequenze di escape (ad es. Potrebbero essere parte di un percorso di file come "C: \ Test"), quindi come posso impedire a PowerShell/Select-String di interpretarle come tali? Ho provato a usare parentesi per $ id senza fortuna.
Grazie a chi ha eliminato il commento inutile :-) – alastairs