क्या AD उपयोगकर्ता और उससे संबद्ध फ़ोल्डर को हटाना संभव है? फ़ोल्डर संरचना है:
D:\Users\Profiles
D:\Users\Redirect
D:\Users\Data
मैं निम्नलिखित स्क्रिप्ट का उपयोग करने की कोशिश कर रहा हूं जो उन उपयोगकर्ताओं को हटा देता है जो 90 दिनों के भीतर लॉग इन नहीं हुए हैं। ये है नहीं मैं क्या चाहता हूँ।
function Delete-ADUser
{
Param($userName = $(throw 'Enter a username to delete'))
$searcher = New-Object System.DirectoryServices.DirectorySearcher([ADSI]"","(&(objectcategory=user)(sAMAccountName=$userName))")
$user = $searcher.findone().GetDirectoryEntry()
$user.psbase.DeleteTree()
}
$NumDays = 90
$LogDir = ".\Removed-User-Accounts.log"
$currentDate = [System.DateTime]::Now
$currentDateUtc = $currentDate.ToUniversalTime()
$lltstamplimit = $currentDateUtc.AddDays(- $NumDays)
$lltIntLimit = $lltstampLimit.ToFileTime()
$adobjroot = [adsi]''
$objstalesearcher = New-Object System.DirectoryServices.DirectorySearcher($adobjroot)
$objstalesearcher.filter = "(&(objectCategory=person)(objectClass=user)(lastLogonTimeStamp<=" + $lltIntLimit + "))"
$users = $objstalesearcher.findone()
Write-Output `n`n"----------------------------------------" "ACCOUNTS OLDER THAN "$NumDays" DAYS" "PROCESSED ON:" $currentDate "----------------------------------------" `
| Out-File $LogDir -append
if ($users.Count -eq 0)
{
Write-Output " No account needs to be removed." | Out-File $LogDir -append
}
else
{
foreach ($user in $users)
{
# Read the user properties
[string]$adsPath = $user.Properties.adspath
[string]$displayName = $user.Properties.displayname
[string]$samAccountName = $user.Properties.samaccountname
[string]$lastLogonInterval = $user.Properties.lastlogontimestamp
# Delete the user
Delete-ADUser $samAccountName
# Convert the date and time to the local time zone
$lastLogon = [System.DateTime]::FromFileTime($lastLogonInterval)
Write-Output " Removed user " $displayName" | Username: "$samAccountName" | Last Logon: "$lastLogon"`n" `
| Out-File $LogDir -append
}
}
प्रश्न: मैं उस स्क्रिप्ट को कैसे संशोधित करूं जो मुझसे उपयोगकर्ता नाम दर्ज करने और उसके फ़ोल्डर्स को हटाने के लिए कहेगी?
\\addsServer\$Profiles\%username%
और इसी तरह