Array (Dizi) ve Hashtable Sözlük Kurulumları Üzerine Tasarım Anlayışı
Bir bilgisayar adı PC-1 dir, bunu $A = "PC-1" ile çözersiniz. Peki sisteminizdeki 10 farklı bilgisayara bir işlem (yeniden başlatma) yollayacaksanız, hepsi için ayrı ABCDE kodları mı gireceksiniz? İşte programlamanın bel kemiği Diziler (Array) PowerShell dünyasını inanılmaz ufaltır.
Klasik Array Fırlatması
$Sunucular = @("Server-1", "Server-2", "DC-Ana", "Mbox-Exch")
Gördüğünüz gibi @() algoritmasıyla çuval oluşturduk. Şimdi ForEach diyerek hepsi için aynı betiği tıkır tıkır tek kalemde işletiriz.
Biraz Uzmanlık: Hashtable (Sözlük)
Peki bana adı değil, o cihazın "Yanında ne yetkisi olduğu (Anahtar-Değer ilişkisi)" de lazım dersek, Dizi değil HashTable (Sözlük Modeli) devreye girer. Kodu @{} şeklindedir.
$Kullanicilar = @{
"Ahmet" = "Satis"
"Ayse" = "Finans"
"Mehmet" = "IT"
}
Program şurada akar: Siz bana $Kullanicilar["Ayse"] komutunu Terminale yollarsanız, PowerShell size kimlik deşifre edici olarak 'Finans' çıktısını geri atar. Konfigürasyon dosyası parse işlemlerinde kalbimizi korur.