替换引号之间的值

时间:2017-05-05 00:45:13

标签: powershell powershell-v4.0

我正在尝试更新web.config文件,使用Jenkins的PowerShell插件获取以下值:

<add key="SmtpServer1" value="${ SmtpServer1}"/>
<add key="UserID" value="${UserID}"/>

将值输入到构建步骤的Jenkins ENV中。 对于前者SmtpServer1输入值为“mail.outbound.xxx.com”(不带引号),UserID输入值为“SteveH”。

我尝试过使用Jenkins Windows PowerShell buildstep:

$SmtpServer1 = "$ENV:SmtpServer1"
$UserID = "$ENV:UserID"
$filename = ".\web.config"

(Get-Content "$filename").Replace('${ SmtpServer1}', "$SmtpServer1") |
    Set-Content "$filename"
(Get-Content "$filename").Replace('${UserID}', "$UserID") |
    Set-Content "$filename"

但输出是:

<add key="mail.outbound.xxx.com" value=""/>
<add key="SteveH" value=""/>

我想得到的是:

<add key="SmtpServer1" value="mail.outbound.xxx.com"/>
<add key="UserID" value="SteveH"/>

任何方向或想法?

0 个答案:

没有答案