Ошибки Get-Content с параметром Raw not, только когда в пути есть пробелы - PullRequest
0 голосов
/ 15 апреля 2020

Весь код работает, за исключением случаев, когда у меня есть пробелы в майском пути, путь имеет двойные кавычки, если в них есть пробел. Ниже приведен код, который вызывает ошибку с путями типа «C: \ Test Debug \ Test.txt».
Ошибка: не удается найти параметр, соответствующий имени параметра «Raw».

function TurnOffDebug($path){
  try {
      $Content = (Get-Content -Path ($path) -Raw)   -replace "Debug=-1","Debug=0"
      Set-Content -path ($path) -Value $Content -NoNewline
      return $true
  }catch {
      Write-Host $_
      $dateVersion = Get-Date -Format "dd/MM/yyyy HH:mm:ss"
      $logEntry = "$($dateVersion)- Could not set version - $($path)"
      LogWrite $logEntry
      return $false
  }

}

1 Ответ

0 голосов
/ 15 апреля 2020

Это ошибка, даже -LiteralPath не работает с -Raw
https://github.com/PowerShell/PowerShell/issues/6954

Обходной путь для любых пробелов в пути, который я удалил -raw и в set-content удалить -nonewline

$FilePath = 'C:\W10\New\VB\NEW\Load Configuration File\ConfigFileIO.txt'
$content =(Get-Content -LiteralPath $FilePath )  -replace "Debug=-1" , "Debug=0" 
Set-Content -path $FilePath -Value $content 

Но когда я использую тот же код, я получаю Get-Content: Cannot find drive. Диск с именем '' C 'не существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...