如何使用powershell检查web.config中的某些特定值

时间:2014-08-14 16:04:59

标签: asp.net-mvc powershell

我正在尝试在web.config中找到一些特定的行/值,但不知道如何做到这一点。例如,如果有一行

<add key="webpages:Version" value="2.0.0.0"/>

如果值对于特定环境是正确的,如何编写脚本以在web.config文件中查找此行

1 个答案:

答案 0 :(得分:0)

您想要使用Select-XML,执行select -expand Node,然后执行Where{$_.Key -eq "webpages:Version"}来指定您的特定节点。它看起来像这样:

Select-XML -Path C:\Path\To\web.config -XPath "//add" | Select -ExpandProperty Node | Where{$_.Key -eq "webpages:Version"}

那将输出:

key                                                value
---                                                -----
webpages:Version                                   2.0.0.0

或者您可以将内容添加到变量中并使用-XML $ Variable而不是-Path C:\ Path \ To \ file.xml。像:

[XML]$WebConfig = Get-Content C:\Path\To\web.config
Select-XML -XML $WebConfig -XPath "//add" | Select -ExpandProperty Node | Where{$_.Key -eq "webpages:Version"}