grc 0 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 Liebe Leute, zu folgenden Script habe ich zwei Fragen: 1. Es funktioniert nur wenn ich es als Admin ausführe. Gibt es eine Möglichkeit, dass er das automatisch macht, wenn ich es anklicke?? 2. Es ist ein Userprofile-Backup-Script und funktioniert grundsätzlich. Aus irgendeinem Grund befindet sich nach dem Kopiervorgang im Ordner Dokumente zusätzlich die Ordner "Bilder, Musik und Videos". Und ich verstehe nicht warum. Bitte um Hilfe! Danke # Welche Ordner sollen gesichert werden? $FoldersToCopy = @( 'Desktop' 'Favorites' 'Documents' 'Pictures' 'Videos' ) $ConfirmUser = $null # Welches Profil soll gesichert werden. Erst kopieren, wenn Eingabe auch bestätigt wurde while( $ConfirmUser -ne 'y' ){ Write-Host -Object '' Write-Host -Object '' $User = Read-Host -Prompt 'Welches Profil soll gesichert werden?' if( -not ( Test-Path -Path "C:\Users\$User" -PathType Container ) ){ Write-Host -Object '' Write-Host -Object '' Write-Host -Object "$User ist nicht vorhanden. Wählen Sie ein anderes Profil aus!" -ForegroundColor red continue } Write-Host -Object '' Write-Host -Object '' Write-Host -Object "Das ausgewählte Profil lautet: $User !" -ForegroundColor yellow $ConfirmUser = Read-Host -Prompt "Sind Sie sicher? (y/n)" } #Kopiervorgang wird gestartet $SourceRoot = "C:\Users\$User" $DestinationRoot = "D:\Sicherung\$User" foreach( $Folder in $FoldersToCopy ){ $Source = Join-Path -Path $SourceRoot -ChildPath $Folder $Destination = Join-Path -Path $DestinationRoot -ChildPath $Folder if( -not ( Test-Path -Path $Source -PathType Container ) ){ Write-Warning "Pfad `t$Source konnte nicht gefunden werden" continue } Robocopy.exe $Source $Destination /E /IS /NP /NFL }
BOfH_666 586 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 (bearbeitet) grc, zu 1. Nein. zu 2. Du musst beim robocopy-Ziel das konkrete Zielverzeichnis mit angeben. Also 'Desktop', 'Favorites', 'Documents', 'Pictures' und 'Videos' jeweils in den Destinationroot mit einarbeiten. Als Erklärung zu 1. Normalerweise hat nur der jeweilige User Zugriff auf sein Profilverzeichnis. Möchte jemand anders darauf zugreifen, braucht er Admin-Rechte. bearbeitet 14. Februar 2019 von BOfH_666
grc 0 Geschrieben 14. Februar 2019 Autor Melden Geschrieben 14. Februar 2019 ich dachte eigentlich dass ich das mit Join-Path mache?!
BOfH_666 586 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 Kommentier mal bitte den robocopy Teil aus und lass Dir die Zielpfade ausgeben .... sie sollten mit einem Backslash enden.
grc 0 Geschrieben 14. Februar 2019 Autor Melden Geschrieben 14. Februar 2019 die werden richtig ausgegeben, aber ohne Backslash
BOfH_666 586 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 OK ... dann versuch doch mal, den Backslash noch dranzuhängen und schau was robocopy draus macht.
grc 0 Geschrieben 14. Februar 2019 Autor Melden Geschrieben 14. Februar 2019 schon versucht....bringt auch nichts. Ich verstehe nicht, dass er Quelle und Ziel richtig erkennt. Aber beim Kopieren findet er auf einmal Bilder, Musik und Videos in Documents, obwohl die nicht da sind.
BOfH_666 586 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 Versuch mal zusätzlich die Option "/XJ" für robocopy.
grc 0 Geschrieben 14. Februar 2019 Autor Melden Geschrieben 14. Februar 2019 Damit scheint es nun zu funktionieren......Werde das noch weiter testen. Danke für deine Hilfe
BOfH_666 586 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 Windows hat für Kompatibilitätszwecke Verknüpfungen zu den "Spezial-Ordnern" im Documents-Ordner. Und wenn Du robocopy nix anderes sagst, rennt es diesen Verknüpfungen hinterher. /XJ verhindert das.
daabm 1.429 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 Ich könnte ja noch ne Fortgeschrittenen-Aufgabe einwerfen Ermittle die Profilpfade aus der Registry (ProfileList), und hole Dir aus der jeweiligen NTUSER.DAT aus den User Shell Folders dann die tatsächlichen Pfade zu den Zielordnern. Oder falls es der aktuelle User ist: Verwende ShGetSpecialFolders dafür
BOfH_666 586 Geschrieben 14. Februar 2019 Melden Geschrieben 14. Februar 2019 Wow ... Du nu wieder ... ich würde erstmal anfangen und die Fehlerquelle "User-Interaction" entschärfen. Freitext-Eingabe is nich ... ich würde eine Liste mit möglichen Profilen anzeigen, aus denen der Benutzer des Scripts nur eins auswählen kann.
daabm 1.429 Geschrieben 15. Februar 2019 Melden Geschrieben 15. Februar 2019 Da wären wir wieder bei ProfileList - mit Dir ist fachlich echt immer nice, da habe ich nie das Gefühl, noch was erklären zu müssen
BOfH_666 586 Geschrieben 15. Februar 2019 Melden Geschrieben 15. Februar 2019 Als wären wir seelenverwandt ... im richtigen Leben würden wir gegenseitig unsere ......
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden