我有一个从JSON字符串填充的复杂对象。
我正在尝试遍历名称本身具有变量的嵌套对象。
因此,如果我执行写入主机$ aaa.bbb.ccc1ccc.ddd ,我会得到一个有效的对象。
如果我执行写入主机$ aaa.bbb.ccc2ccc.ddd ,我会得到一个有效的对象。
如果我将 $ i = 1 设置为
写入主机$ aaa.bbb.ccc $($ i)ccc.ddd 当然会失败。
如果我尝试 get-variable -valueonly -name“ aaa.bbb.ccc $($ i)ccc.ddd” 我收到一个错误:找不到名称为'aaa.bbb.ccc1ccc.ddd'的变量
说实话,我什至不能做 get-variable -valueonly -name“ aaa.bbb”
还有其他对象,例如aaa.bbb.dddd。我不想的。
如果$ i为[1..100],有人可以告诉我如何遍历此对象吗?
谢谢
答案 0 :(得分:1)
在使用.
引用运算符时,从3.0版开始,您可以将可扩展字符串替换为任何成员引用:
$aaa.bbb."ccc${i}ccc".ddd
因此在您的示例中,您可以这样做:
1..2 |ForEach-Object { $aaa.bbb."ccc${i}ccc".ddd }