2016-04-06 29 views
0

Bir anahtar için farklı değerler eklemek için PowerShell için bir veri türüne ihtiyacım var. hangi türü seçmeliyim?Anahtar başına birden çok değer içeren sözlük

veri gibidir:

+--------+--------+--------+--------+ 
| Serv1 | Serv2 | Serv3 | Serv4 | 
| -------+--------+--------+------- |  
| User1 | User2 | User3 | User4 | 
| User3 | User1 | User2 | User4 | 
| User7 | User8 | User9 | ------ | 
+--------+--------+--------+--------+
+4

sizin kullanım örneğini açıklayınız. Hangi anahtar? Verileri nasıl kullanacaksınız? –

cevap

5

Bu bilgi ile cevap daha kolay olurdu. Ancak buna dayanarak, değerlerin dizileriniz istediği şey olan [hashtable] gibi görünüyor.

Örnek:

$hash = @{ 
    Serv1 = @(
     'User1', 
     'User3', 
     'User7' 
    ) 

    Serv2 = @(
     'User2', 
     'User1' 
    ) 
} 

# add a new user to an existing key 

$hash.Serv2 += 'User8' 

# add a new key 

$hash.Serv3 = @(
    'User3', 
    'User2' 
) 
+0

, $ hash –

+3

İyi çağrı @AnthonyStringer oluştururken, Serv1 ve Serv2 arasında '' '' '' ile değiştirilmesi gerekebilir, daha iyisi, yeni satır ile hiçbir ayırıcı gerekmez. – briantist

+0

Yükseltme komut dosyaları kullanılırken kaynak kullanımı konusunda dikkatli olduğum için + = operatörünün powershell içinde kullanımıyla ilgili çitlerde bulundum. Ben (şu anda) anladığımdan, hafızayı yeniden tahsis ediyor ve her yaptığınızda hashtabayı yeniden yaratıyorsunuz. Powershell bunu nasıl ele alır? –