title:使用数组和哈希的powershell forloop?从数组powershell哈希构建
我知道如何在perl和unixshell中做到这一点。我没有在PowerShell中看到它。所以我会问。
我会保持我的问题简单。 如果我有一个列表,我想做一个散列,其中的键是列表的元素,并且该值是一个属性。
像我有7个数组矮人服务器
$d = ("happy", "sleepy", "sneezy", "doc", "grumpy", "dopey", "bashful")
我想凑成为他们高度英寸:d_height{ "happy" } = "40"
似乎有点简单?好。但是如果这个列表是即时生成的,那么这个哈希必须在运行中完成。怎么样?
....更详细的,如果你想它..... 我从PowerShell开始,然后恢复到Perl,因为我知道这一点。
我具有7个矮人服务器
$d = ("happy", "sleepy", "sneezy", "doc", "grumpy", "dopey", "bashful")
foreach ($one (0 .. ($d.count - 1))){
$d[ $one ]
}
行阵列..细。现在我想要启动时间。 我已经知道命令。所以只要假装就是这样。
$boottime = server.blahblah
现在我回到Perl,因为我知道它。 (叹气)
foreach (@d){
$boottime = $d[ $one ].blahblah ;
if ($boottime =~ "AM $" or $boottime =~ "PM $"){
$d_height{ $d } = $boottime;
}
$d_height{ $d } = "unknown";
}
既然我已经破坏了代码,剩下的就是这些。我去了perl。
foreach $x (keys(%d_height)){
printf("%-20s %03d", $x, $d_height{ $x });
}
我知道....格式表与@{ hash stuff }
是的...很好。 但这是perl ....
我怎么能在PowerShell中做到这一点?
矮人的高度等于服务器的启动时间?什么? –
我有一个列表@A。我想要一个散列,其中的散列键是@A。 我可以解释一下,如果我硬连线这样: '@A =(“1”,“2”,“3”)$ H {“1”} =“apples”$ H {“2”} =“unset “$ H {”3“} =”番茄“' 而不是硬连线,我会从某些PowerShell命令中建立@A。 我想要有飞行中构建的%H哈希键。 (我的问题)。 那么,我如何使用%H的键作为@A来创建%H哈希? – clonea