Advertisement
Guest User

Untitled

a guest
Dec 1st, 2016
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. $Servers = Get-Content "Path\Servers.txt"
  2.  
  3. $Username = "user"
  4. $Username = "domain\user"
  5. $Password = "password"
  6.  
  7. function TestFunction
  8. {
  9. $RebootServers = @()
  10. Foreach ($Server in $Servers) {
  11. quser /server:$Server 2>&1 | Select-Object -Skip 1 | ForEach-Object {
  12. $CurrentLine = $_.Trim() -Replace '\s+',' ' -Split '\s'
  13. $UserID = $CurrentLine[0]
  14. if ($CurrentLine[2] -eq 'Disc') {
  15. $SessionID = $CurrentLine[1]
  16. $UserState = $CurrentLine[2]
  17. } else {
  18. $SessionId = $CurrentLine[2]
  19. $UserState = $CurrentLine[3]
  20. }
  21. If ((10 -lt $SessionID ) -and ($UserState -eq "Disc") -and ($Server -notmatch 'server([0][6]|[0][9]|[1][2]|[1][9])')) {
  22. $RebootServers += $Server
  23. #Logoff $SessionID /Server:$Server /VM
  24. }
  25. ElseIf ((10 -lt $SessionID ) -and ($UserID -eq $Username) -and ($Server -notmatch 'server([0][6]|[0][9]|[1][2]|[1][9])')) {
  26. $RebootServers += $Server
  27. }
  28. }
  29. }
  30. $RebootServers | Sort-Object | Get-Unique
  31. }
  32.  
  33. $RebootServers = TestFunction
  34. Write-Output $RebootServers
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement