Checked Client from AD via last logon date
- S.Ergül
- 15 Ara 2020
- 1 dakikada okunur
Güncelleme tarihi: 16 Ara 2020
Hi Folks,
Today, we will checked our sccm client according to their lastest login date on AD. You can use below script to check that but ıf you want to check 2 different domain, both of them be trusted.
##########################################################
#Script Title: Get Sccm no client last logon date
#Author: Selcuk ERGUL
#Date Created: 11/27/2017
#Version: V1.0 - First relase by Dursun ALACAM
# V2.0 - Check 2 different domains added by Selcuk ERGUL
#Description: Check clients on AD according to lastest logon date.
##########################################################
# Import the ActiveDirectory module to enable the Get-ADComputer CmdLet
Import-Module ActiveDirectory
$CurrentDir= split-path -parent $MyInvocation.MyCommand.Definition
$gun = "-30"
$gun = -30 # How many days ago, client was not logon.
$Dates=[DateTime] $(get-date -format "MM/dd/yyyy H:mm:ss tt").tostring()
$ax="ComputerName;Ip;Enabled;LastLogonDate;Expire Days;DistinguishedName`r`n"
#####Enter Domains Name ###########
$DSName1 = "domain name 1"
$DSName2 = "domain name2"
Import-Csv $CurrentDir\no-computers.csv -Delimiter ";" |
ForEach-Object {
$ComputerName=$_.ComputerName
if ((Get-ADComputer -server $DSName1 -Filter "Name -like '$ComputerName'" -Properties LastLogonDate,IPv4Address).name -eq $ComputerName) #SCCM client domainde varsa
{
$AdComputer = Get-ADComputer -server $DSName1 -Filter "Name -like '$ComputerName'" -Properties LastLogonDate,IPv4Address
$adlstfilter=[math]::Round(($DateS-$AdComputer.LastLogonDate).TotalDays)
$adlastlogon=$AdComputer.lastlogonDATE
$adenabled=$AdComputer.enabled
$ip=$AdComputer.IPv4Address
$adDistinguishedName=$AdComputer.DistinguishedName -replace '[,]',' '
$ax+="$ComputerName;$ip;$adenabled;$adlastlogon;$adlstfilter;$adDistinguishedName`r`n"
}
elseif((Get-ADComputer -server $DSName2 -Filter "Name -like '$ComputerName'" -Properties LastLogonDate,IPv4Address).name -eq $ComputerName)
{
$AdComputer = Get-ADComputer -server $DSName2 -Filter "Name -like '$ComputerName'" -Properties LastLogonDate,IPv4Address
$adlstfilter=[math]::Round(($DateS-$AdComputer.LastLogonDate).TotalDays)
$adlastlogon=$AdComputer.lastlogonDATE
$adenabled=$AdComputer.enabled
$ip=$AdComputer.IPv4Address
$adDistinguishedName=$AdComputer.DistinguishedName -replace '[,]',' '
$ax+="$ComputerName;$ip;$adenabled;$adlastlogon;$adlstfilter;$adDistinguishedName`r`n"
}
else
{
$ax+="$ComputerName;;;;Domainde Yok;`r`n"
}
}
out-file -filepath "$CurrentDir\$gun No computer $(Get-Date -Format dd-MMMMMMMMMMMMM-yyyy).csv" -InputObject $ax -encoding UTF8
write-host "$ax"
write-host $AdComputers.count $noclients.count
ความคิดเห็น