PowerShell

Powershell Kullanarak Active Directory Kullanıcı ve Bilgisayar Sayılarını Bulmak

Merhabalar bu yazıda sizlere Domain sistemini kullanan ve çok sayıda kullanıcı ve bilgisayarlara sahip kuruluşlar için dominde bulunan kullanıcı ve bilgisayarların sayısının ou bazında bölüm bölüm incelenmesi ve analiz edilmesinde çok işinize yarayacak bir powershell script sunacağım.

Bu powershell script sayesinde biz IT çalışanlarından istenen istekleri ve raporları hızlı bir şekilde sunabiliriz.

Active Directory’ de kullanıcı ve bilgisayar sayılarını OU bazlı bulmak için kullanmamız gereken powershell komutları aşağıdaki gibidir.

Powershell Scriptte Bulunan Ortak Kısmımız;

Import-Module activeDirectory
$fqdn = Read-Host “Domain ismini giriniz”
$cred = Get-Credential

Write-Host “$fqdn domainine baglaniliyor…” -ForegroundColor Red

$domain = (get-addomain $fqdn -Credential $cred | select distinguishedName,pdcEmulator,DNSroot,DomainControllersContainer)

Write-Host “Tamamlandı. OU işlemleri yapılıyor…” -ForegroundColor Red

$OUlist = @(Get-ADOrganizationalUnit -filter * -Credential $cred -SearchBase $domain.distinguishedName -SearchScope Subtree -Server $domain.DNSroot)

Write-Host “Tamamlandı. Bilgisayar sayıları getiriliyor…” -ForegroundColor Red

for($i=1; $i -le $OUlist.Count; $i++)
{
write-progress -Activity “OUlar hesaplanıyor” -Status “$i OUsunun sayısı bulunuyor” -PercentComplete ($i/$OUlist.count*100)
}

$newlist = @{}

Domaindeki Bilgisayar Sayılarını Bulmak İçin ;

foreach($_objectItem in $OUlist)
{
$getcomputer = Get-ADComputer -Filter * -Credential $cred -SearchBase $_objectItem.DistinguishedName -SearchScope OneLevel -Server $domain.pdcEmulator | measure | select count

for ($i=1; $i -le $getcomputer.Count; $i++)
{
write-progress -Activity “Bilgisayar sayısı bulunuyor...” -Status “$i icerisinde $_objectItem adet bilgisayar bulundu” -PercentComplete ($i/$getcomputer.Count*100)
}

$newlist.Add($_objectItem.DistinguishedName, $getcomputer.Count)
}

$newlist | ft -AutoSize | Out-File D:OUComputerCount.txt
Write-Host “Tüm işlemler tamamlandı” -ForegroundColor Red

 

Domaindeki Kullanıcı Sayılarını Bulmak İçin ;

 

foreach($_objectItem in $OUlist)
{
$getuser = Get-ADUser -Filter * -Credential $cred -SearchBase $_objectItem.DistinguishedName -SearchScope OneLevel -Server $domain.pdcEmulator | measure | select count

for ($i=1; $i -le $getuser.Count; $i++)
{
write-progress -Activity “Kullanıcı sayısı bulunuyor...” -Status “$i icerisinde $_objectItem adet kullanıcı bulundu” -PercentComplete ($i/$getcomputer.Count*100)
}

$newlist.Add($_objectItem.DistinguishedName, $getuser.Count)
}
$newlist | ft -AutoSize | Out-File D:OUuserCount.txt
Write-Host “Tüm işlemler tamamlandı” -ForegroundColor Red

Umarım faydalı olmuştur. Daha farklı powershell scriptler için blogumda bulunan powershell kategorisini inceleyebilirsiniz. İyi çalışmalar dilerim.

Tolga CEYHAN

Tolga CEYHAN, bilgi teknolojilerini severek takip eder ve BT üzerine hali hazırda aktif olarak çalışmaktadır. 2006 yılından 2017 yılına kadar web tasarım yazılım üzerine çalışmalar yaptım. Şuan ise Windows Sistem ve Sistem Güvenliği alanında çalışmalarımı sürdürmekteyim.

Recent Posts

PowerShell Komutları (Profesyonel Rehber)

Birçok kişi PowerShell komutları konusuna yalnızca “hangi komut ne işe yarar?” düzeyinde yaklaşır. Oysa profesyonel…

1 ay ago

Windows File Server Migration Rehberi (Adım Adım Veri Taşıma)

Kurumsal IT altyapılarında zamanla depolama ihtiyaçlarının artması, eski sunucuların performansının yetersiz kalması veya yeni mimariye…

1 ay ago

NTFS Permission Tasarımı ve AGDLP Modeli Rehberi

NTFS Permission Tasarımı: AGDLP Modeli ile Kurumsal Yetkilendirme Rehberi Kurumsal ortamlarda NTFS permission tasarımı, dosya…

2 ay ago

Windows File Server Güvenliği Rehberi

Kurumsal yapılarda Windows File Server güvenliği, veri bütünlüğü ve iş sürekliliği açısından kritik öneme sahiptir.…

2 ay ago

Blockchain Mantığı ile PowerShell Log Bütünlüğü

Blockchain Log Bütünlüğü Bu yazımızda blockchain log bütünlüğü üzerine incelemelerde bulunacağız. Günümüz kurumsal sistemlerinde en…

3 ay ago

PowerShell SQL Backup Script – Automated Full Database Backup

A PowerShell SQL Server backup script is a practical way to standardize SQL backups across…

3 ay ago

This website uses cookies.

Read More