Selamlar.Bir sorgu oluşturmak istiyorum.Belirttiğim tarih ve saat aralığında saat aralığı belirtmek zorlaştırıyorsa olmasada olur belirttiğim tarihte oturum açan kullanıcıların listesini çıkarmak istiyorum.Script şeklinde olursa daha kullanışlı olur benim için tarih kısmını değiştirdiğimde sorguyu çalıştırıp excel halinde döküm almak istiyorum.Bu konu hakkında bilgisi olan yardımcı olabilecek olan varmı.İnternette biraz araştırdım ama kodlamalara tam hakim olmadığımdan uyarlıyamıyorum.Bulmuş olduğum bir komut var aşağıya ekliyorum.Yardımı olursa bunun üzerinden ilerliyebiliriz.Bunu çalıştırdığımda muhtemelen bugüne kadar ki tüm logon olanları listeliyor çünkü çalışınca durmak bilmiyor
) ayriyeten tablolama yapmıyor csv yi çalıştırınca tek sütün halinde geliyor mümkünse name username ve datetime ı ayrı sütünlar halinde oluştursun.Yardımlarınızı bekliyorum .
Kod:
Import-Module ActiveDirectory
function Get-ADUsersLastLogon()
{
$dcs = Get-ADDomainController -Filter {Name -like "*"}
$users = Get-ADUser -Filter *
$time =
$exportFilePath = "c:\lastLogon.csv"
$columns = "name,username,datetime"
Out-File -filepath $exportFilePath -force -InputObject $columns
foreach($user in $users)
{
foreach($dc in $dcs)
{
$hostname = $dc.***************
$currentUser = Get-ADUser $user.SamAccountName | Get-ADObject -Server $hostname -Properties lastLogon
if($currentUser.LastLogon -gt $time)
{
$time = $currentUser.LastLogon
}
}
$dt = [DateTime]::FromFileTime($time)
$row = $user.Name+","+$user.SamAccountName+","+$dt
Out-File -filepath $exportFilePath -append -noclobber -InputObject $row
$time = 0
}
}
Get-ADUsersLastLogon
