PowerShell İçerisinde CSV Dosyası ile Kullanıcı Ekleme

Selamlar arkadaşlar bu makalemde sizlere PowerShell içerisinde CSV dosyalarını nasıl kullanacağımızı ve CSV ile birden çok Kullanıcıyı aynı anda nasıl AD’ye ekleyeceğimizi göstereceğim.

Comma Separated Values (CSV) Virgülle Ayrılmış Değerler dosyası, veri listesi içeren düz veri dosyasıdır. Bu dosyalar genellikle bir birinden farklı uygulamalar arasında veri transferleri yaparken kullanılır ve veritabanları CSV dosyalarını desteklerler. Buna CSV dosyası denir.

İlk olarak bir ADKullanici.csv adında yukarıdaki gibi Virgül ile ayrılan dataları içeren bir CSV dosyası oluşturdum ve C:\ dizini altına attım.

> Import-Csv C:\ADKullanici.csv
Bu kod yardımı ile CSV dosyasının içerisini Import ederek görebilirsiniz. Bu işlemi yaptığımda Türkçe karakterlerin hatalı olduğunu gördüm.

Daha sonra dosyamı tekrar ADKullanici2.csv olarak adlandırdım ve Enconding kısmını Unicode olarak değiştirdim ve C:\ dizini altına kayıt ettim.

Daha sonra tekrar kontrol ettiğimde dosyamda herhangi bir Karakter sorunu olmadığını gördüm. Unicode olarak kayıt etmeniz durumunda Türkçe karakter sorunu ortadan kalkacaktır.

Kullanıcıları Ekleme İşlemi :

Kodlar ve CSV içerisinde bulunan sütunlar sayesinde kod içerisine ekleme yapacağız ve kullanıcılarımızı ekleyeceğiz. Bu kodları tek tek açıklamam gerekirse :

> Import-Csv C:\ADKullanici.csv -Delimiter “,” |
Bu kod sayesinde CSV dosyamızın yerini belirtip içerisindeki ayıraçları , (Virgül) yapıyoruz. Türkçe bir işletim sistemi kullanmanız durumunda , yazsanız dahi ; (Noktalı Virgül) olacağından dolayı çalışmasını engellememesi adına bu ayarı yapıyoruz. Bir PipeLine koyarak CSV dosyası içerisinde bulunan bilgileri bir sonraki gelecek kod ile kullanıyor olacağız.

> foreach {
Birden fazla kullanıcı ekleme işlemi olacağından dolayı döngümüzü çalıştırıyoruz.

> New-ADUser -GivenName $_.Adi -Surname $_.Soyadi `
New-ADUser komutu ile kullanıcı ekleyeceğimizi yazıyoruz. –GivenName alanına $_.Adi yazdığımızda CSV dosyası içerisindeki Adi alanını kullanıyor. Aynı şekilde $_. Koyarak Soyadi kısmınada bu işlemi uyguluyoruz. ` (Alt Gr + ; Tuşu) ile yapılan bu karakter ile ise kodu bir alt satıra taşıyoruz.

> -Name $_.ADveSoyad -DisplayName $_.ADveSoyad `

-SamAccountName $_.KullaniciAdi -UserPrincipalName $_.Domain `

-AccountPassword (ConvertTo-SecureString -AsPlainText “P@ssw0rd” -Force) `

-ChangePasswordAtLogon $true -Enabled $true `

-Path “ou=ilkKullanici,ou=Kullanicilar,dc=deneme,dc=local”
Diğer alanlarıda aynı şekilde yazıyoruz. Bu kısımda bir fazla kod olarak –Path ekledim buda kullanıcılarımızın oluşturulacağı alanı belirlemektedir.

Kodumuzun hata vermeden çalışması durumunda Kullanıcılar oluşturulmuştur demektir.

Kullanıcılarımız oluşmuştur.

Kullanıcı Properties alanını kontrol etmeniz durumunda herhangi bir Türkçe karakter sorunu olmadığınıda görebilirsiniz.

Bir sonraki makalemde görüşmek üzere kolay gelsin.

Bir Cevap Yazın