Advertisement
Guest User

Untitled

a guest
Jul 20th, 2017
524
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # Author:  Lucas Arnström
  2. # Contact: Lucke92@gmail.com
  3.  
  4. Write-Host
  5. Write-Host "DiskQuota 1.4 - Alpha | Designed for Office IT-Partner @ Gavle, Sweden"
  6. Write-Host
  7.  
  8. # Lägg in användarna i arrayen users
  9. function Compile-Users {
  10.     Process {
  11.         for($i = 0 ; $i -le $arrComputers.Length ; $i++) {
  12.             [array]$users[$i] = $_.User
  13.         }
  14.     }
  15. }
  16.  
  17. # Skapa ett objekt och lägg in domän\dator och diskutrymmet för att sedan skicka vidare det i pipelinen
  18. # fortsätt utveckla for-loopen så den sätter ihop redan existerande användare med den nya för att undgå kopior
  19. function Compute {
  20.     Process {
  21.         for($i = 0 ; $i -le $arrComputers.Length ; $i++) {
  22.             if($_.User -eq $users[$i]) {
  23.                 # Här ska en ihopkoppling av användare och deras diskanvändning sammankopplas och beräknas
  24.             }
  25.         }
  26.        
  27.         $obj = New-Object PSObject
  28.         $obj | Add-Member NoteProperty "Domain\Computer" ($_.User -replace ('.+n="(.+)".+e="(.+)"','$1\$2'))
  29.         $obj | Add-Member NoteProperty "DiskspaceUsed(MB)" ([Math]::Round(($_.DiskSpaceUsed / 1048576), 1))
  30.        
  31.         Write-Output $obj   # Skickar vidare objektet i pipelinen
  32.     }
  33. }
  34.  
  35. $strComputer = Read-Host @"
  36. Please enter computername.
  37. It could also be a domainname, a NetBIOS name, or IP-adress.
  38. Only place a dot if you want to check localhost.
  39. COMPUTERNAME
  40. "@
  41.  
  42. Write-Host
  43. Write-Host "Please wait..."
  44.  
  45. $arrComputers = $strComputer.Split(" ")                # Delar upp inmatningarna till en array ifall flera datorer / servrar har angetts
  46.  
  47. foreach($computer in $arrComputers) {
  48.     $colItems += get-wmiobject -class "Win32_DiskQuota" -namespace "root\CIMV2" `
  49.     -computername $computer
  50. }
  51.  
  52. $colItems | Sort-Object -Property User | Compile-Users | Compute | Format-Table * -auto
  53.  
  54. Read-Host "Press any key to continue...."
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement