PowerShell读取属性文件

时间:2016-08-09 11:36:15

标签: powershell powershell-v2.0

我需要从配置文件中读取属性。 我可以用

做到
ConvertFrom-StringData(Get-Content test.conf | out-String)

但是在这个文件中我有param

username=intranet\sysTestAcc

当它试图解析它时我有错误: 无法识别的转义序列\ s。

如何使用脚本修复此问题?我无法在运行脚本之前更改文件。

2 个答案:

答案 0 :(得分:4)

\替换为\\

# The first '\\' is a regex with a '\' escape to create a literal '\'
# The second '\\' is a literal replacement (non-regex) that inserts two '\'
ConvertFrom-StringData ((Get-Content test.conf -Raw) -replace '\\','\\')

答案 1 :(得分:2)

你必须用另一个逃脱\。即。

username=intranet\\sysTestAcc

此时ConvertFrom-StringData会很高兴。

您也可以将Get-Content的“-Raw”参数替换为Out-String中的管道。