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