Cómo ignorar las secuencias de escape almacenadas en la variable de cadena de PowerShell?

En mi script de PowerShell, estoy ejecutando Select-String en varios archivos, buscando una cadena que se le pase a través de una variable ($ id):

foreach ($file in (ls "path\to\files")) {
    $found = $false
    $found = Select-String -Path $file $id -Quiet
    if ($found) {
        break
    }
}

Desafortunadamente, la variable $ id a veces tiene cosas como "\ C" o "\ T", que Select-String intenta interpretar como secuencias de escape. Estas no son secuencias de escape válidas, por lo que Select-String arroja un error. No están destinados a ser secuencias de escape (por ejemplo, podrían ser parte de una ruta de archivo como "C: \ Test"), entonces, ¿cómo puedo evitar que PowerShell / Select-String las interprete como tales? He intentado usar paréntesis alrededor de $ id sin suerte.

Respuestas a la pregunta(3)

Su respuesta a la pregunta