我存储了许多依赖于其他变量的变量,这些变量本身依赖于其他变量,如下所示:
$soft_version = "5.8.2"
$soft_filename = "somesoft-${soft_version}.exe"
$soft_path = "/some/path/$soft_filename"
$soft_call_args = "/S /forcerestart"
我想将它存储在哈希表中,以便我可以更轻松地访问这些值:所以我尝试了以下
$soft = @{
version="5.8.2";
filename="somesoft-${soft.version}.exe"
path="/some/path/$soft.filename"
call_args = "/S /forcerestart"
}
这样我就可以访问这样的值:
$soft.version
$soft.filename
$soft.path
$soft.call_args
但它似乎不起作用,相应的键仍为空:
$soft
Name Value
---- -----
filename somesoft-.exe
path /some/path/
call_args /S /forcerestart
version 5.8.2
有没有办法可以在同一个哈希表中访问哈希表的值?谢谢: - )
答案 0 :(得分:1)
尝试用括号括起来,这对我有用(PSVersion 5):
$soft = @{
version="5.8.2";
filename="somesoft-$($soft.version).exe"
path="/some/path/$($soft.filename)"
call_args = "/S /forcerestart"
}
<强>结果强>
$soft
Name Value
---- -----
filename somesoft-5.8.2.exe
path /some/path/somesoft-5.8.2.exe
call_args /S /forcerestart
version 5.8.2
答案 1 :(得分:0)
您还可以使用新的v5类或自定义对象