Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.80 KB | None | 0 0
  1. $servers = Get-Content C:server.txt
  2. $folder = "D$store"
  3. $smtpserver = "XXXXXX"
  4. @(
  5. foreach ($Server in $Servers)
  6. {
  7. $folderSize = ( Get-ChildItem -path \$server$folder -Recurse -Force | Measure-Object -Property Length -Sum ).Sum
  8.  
  9. if ($folderSize -gt '60Gb') {
  10. Write-output "Folder size exceeded 60 GB on server:-$Server. Current size on $server is $folderSize. Please review and take further action." | Out-file -FilePath "C:reslt.txt"
  11. Send-MailMessage -to abc@abc.com -from xx@xx.com -Subject "Limit Alert" -SmtpServer $smtpserver -Attachments "C:reslt.txt"
  12. }
  13.  
  14. else { Write-output "Folder size is within 60GB on $server." }})
  15.  
  16. $servers = Get-Content C:server.txt
  17. $folder = "D$store"
  18. $smtpserver = "XXXXXX"
  19. $results = @()
  20.  
  21. foreach ($Server in $Servers) {
  22. $folderSize = ( Get-ChildItem -path \$server$folder -Recurse -Force | Measure-Object -Property Length -Sum ).Sum
  23. if ($folderSize -gt '60Gb') {
  24. Write-Output "Folder size exceeded limit on $server"
  25. $results += New-Object -TypeName PSObject -Property @{
  26. ServerName = $Server
  27. FolderSize = $folderSize
  28. }
  29. }
  30. else { Write-output "Folder size is within 60GB on $server." }
  31. }
  32. if ($results.Count -gt 0){
  33. $bodyString = "Servers over limit:"
  34. #I'd get fancy here and take $results, format it as a table, and then convert to HTML and put the snippet in the body...
  35. $results | % {$bodyString += "The server "+$_.ServerName+"is over the limit and is currently at "+$_.FolderSize+"GB`r`n"}
  36. Send-MailMessage -to abc@abc.com -from xx@xx.com -Subject "Limit Alert" -SmtpServer $smtpserver -Body $bodyString
  37. }
  38. else {
  39. Send-MailMessage -to abc@abc.com -from xx@xx.com -Subject "Limit Alert - no results" -SmtpServer $smtpserver -Body "No results were found for servers over the limit"
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement