我可以使用powershell来返回存储为字符串的变量的值吗?

时间:2013-11-07 15:04:29

标签: xml variables powershell

我有以下代码块:

[xml]$xml = @"
<response>
    <num>2</num>
    <time>7</time>
</response>
"@

$VARS = New-Object -TypeName PSObject `
                   -Property @{root = "response"
                               num  = "response.num"}

$xml.($VARS.root)  # test 1
$xml.($VARS.num)   # test 2

测试1返回两个元素num和time。测试二不返回任何内容(因为xml中没有这样的元素'response.num')。是否有可能使PowerShell将String作为变量进行求值?如上所述,如果我有一个字符串'variable.property.sub-property',有什么办法让powershell返回子属性的值?

我知道我可以用x-x和xml来做到这一点。但是有没有一种语法可以让测试2工作?

1 个答案:

答案 0 :(得分:2)

这似乎有效:

iex "`$xml.$($vars.num)"   # test 2
2