Я импортирую набор значений конфигурации из файла в формате JSON, используя следующее:
$configFileContent = Get-Content -Path run.config | ConvertFrom-Json
Это приводит к результату, который, помимо прочего, содержит следующее (содержимое переменной $configFileContent
):
{
"config-values":{
"path":"..\temp-path"
}
}
Далее я пытаюсь получить доступ к значению path из этой конфигурации следующим образом:
$conf = $configFileContent.'config-values'
$tempPath = $conf.'path'
.. но это не удается из-зачтобы символы \t
в ..\temp-path
интерпретировались как escape-последовательность, представляющая вместо этого Tab . Это ясно, если напечатать содержимое $conf
, которое теперь:
path
----
.. emp-path
Как видите, значение Path
равно .. <tab> emp-path
вместо ..\temp-path
, как и предполагалось. Очевидно, это вызывает проблемы позже, когда я пытаюсь использовать переменную $tempPath
в качестве фактического пути.
Как я могу заставить Powershell интерпретировать это так, как задумано - то есть трактовать строки как литералы здесь?