Jump to content

PowerShell Script Auslesen Größe Benutzerprofile


Go to solution Solved by zahni,
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Recommended Posts

Guten Tag zusammen,

 

wir haben Windows Server 2012 als Terminalserver bei uns im Einsatz.

 

Bin auf der Suche nach einem Skript zum Auslesen der jeweligen Benutzerprofilgröße..

 

Folgendes Script wenn ich lokal auf dem Terminalserver im Verzeichnis C:\Benutzer ausführe erhalte ich einige Fehlermeldungen "Zugriff verweigert": 

get-childItem | foreach-object -process {$colItems = (Get-ChildItem $_ -recurse -force | Measure-Object -property length -sum)
 "$_ -- " + "{0:N2}" -f ($colItems.sum / 1MB) + " MB"}#

Fehlermeldungen für z.B. einen Benutzerordner:

Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Anwendungsdaten" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Anwendungsdaten:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\AppData\Local\Anwendungsdaten" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\...Anwendungsdaten:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\AppData\Local\Microsoft\Windows\INetCache\Content.IE5" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\...che\Content.IE5:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\AppData\Local\Microsoft\Windows\INetCache\Low\Content.IE5" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\...Low\Content.IE5:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\AppData\Local\Microsoft\Windows\Temporary Internet Files" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\... Internet Files:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\AppData\Local\Temporary Internet Files" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\... Internet Files:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\AppData\Local\Verlauf" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\AppData\Local\Verlauf:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\AppData\Roaming\Microsoft\Windows\Start Menu\Programme" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\... Menu\Programme:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Cookies" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Cookies:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Documents\Eigene Bilder" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Documents\Eigene Bilder:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Documents\Eigene Musik" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Documents\Eigene Musik:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Documents\Eigene Videos" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Documents\Eigene Videos:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Druckumgebung" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Druckumgebung:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Eigene Dateien" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Eigene Dateien:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Lokale Einstellungen" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Lokale Einstellungen:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Netzwerkumgebung" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Netzwerkumgebung:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Recent" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Recent:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\SendTo" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\SendTo:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Startmenü" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Startmenü:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand
 
Get-ChildItem : Der Zugriff auf den Pfad "C:\Users\riedf\Vorlagen" wurde verweigert.
In Zeile:2 Zeichen:55
+ ... bject -process {$colItems = (Get-ChildItem $_ -recurse -force | Measu ...
+                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (C:\Users\riedf\Vorlagen:String) [Get-ChildItem], UnauthorizedAccessException
    + FullyQualifiedErrorId : DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand

Nach der Fehlermeldung erhalte ich die Ausgabe der Profilgröße in MB.

 

Mir würde es schon reichen, wenn die Fehlermeldungen nicht angezeigt werden und ich nur die Zeile mit dem jeweiligem Profil und Größe angezeigt bekomme.

 

Am besten Ausgabe in eine Excel-Datei....

 

Kann mir hier jemand helfen bitte....

 

Vielen Dank im Voraus!

Link to comment

Fehlermeldung: mangelnde Berechtigungen.

Also wird der Ausführungsbenutzer keine Berechtigungen auf die Verzeichnisse haben.

Ursächlich liegt das Ganze am Recurse, da hier weitere Eigenschaften abfragt werden, für die du Zugriff benötigst.

 

Also wie beschrieben, Berechtigungen setzen oder den Fehler ignorieren.

Edited by PowerShellAdmin
Link to comment

Ach so... Measure misst nur Dateien, keine Ordner!

 

Ne Option wäre, mit COM zu arbeiten :)

 

... Fehler ignorieren wäre m.E. suboptimal, weil ja dann die Profilgröße nicht korrekt gerechnet wird, oder?

$objFSO = New-Object -com  Scripting.FileSystemObject
$userFolder = "C:\Benutzer\"
get-childItem $userFolder | Where-Object {$_.PSIsContainer -eq $True} | foreach-object {$colItem = ($objFSO.GetFolder($userFolder + $_.Name))
 "$_ -- " + "{0:N2}" -f ($colItem.Size / 1MB) + " MB"}





Edited by Cybquest
Link to comment
  • 2 weeks later...
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...