$limit = 90
$testpath = „h:\“
$resultpath = „c:\ee“
$admins = „[email protected]“
$from = „[email protected]“
$smtpserver = „smtp.domain.com“
- Weg $testpath - Recurse Erhalten-ChildItem | ? {$_.fullname.length - GT $limit} |
Vorwählen-Gegenstand Vor und Zuname,
@ {n= " Inhaber "; e= {
$_.GetAccessControl () .GetOwner („System.Security.Principal.NTAccount ")}},
@ {n= " namelength "; e= {$_.fullname.length}} |
% {
Heraus-Akte - FilePath „$resultpath \ Longfiles von $ ($_.owner - \ \ „ersetzen“,“ - „) .txt“ - anfügen - InputObject „$ ($_.namelength) - $ ($_.fullname)“
}
Erhalten-ChildItem $resultpath - Filter „longfiles von *“ | % {
wenn ($_.name - „Longfiles \ sof \ s zusammenbringen (. +) \ .txt“) {
$user = $matches [1] - ersetzen „-“, „\“
$ntacc = Neu-Gegenstand System.Security.Principal.NTAccount ($user)
$sid = $ntacc. Übersetzen ([System.Security.Principal.SecurityIdentifier])
$ADUSER = [ADSI] „LDAP: /“
$email = $aduser. Properties.mail
wenn ($email) {- Zubehöre $_.fullname - Körper Senden-MailMessage „ändern bitte die Dateinamen der Akten, die verzeichnet in der angebrachten Akte zu kürzerem!“ `
- Von $from - SmtpServer $smtpserver - „Systemsnachricht“ - zu $email - cm $admins unterwerfen
}
sonst {
- Zubehöre $_.fullname - dem Körper„eMail coudn't gesendet Inhaber“ `Senden-MailMessage
- Von $from - SmtpServer iqjb-exchback - „Systemsnachricht“ - $admins unterwerfen
}
}
sonst {Schreiben-Wirt „irgendeine Störung mit Akte $_“}
}
|