grc 0 Geschrieben 14. Februar 2019 Melden Teilen 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 } Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Februar 2019 Melden Teilen 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 Zitieren Link zu diesem Kommentar
grc 0 Geschrieben 14. Februar 2019 Autor Melden Teilen Geschrieben 14. Februar 2019 ich dachte eigentlich dass ich das mit Join-Path mache?! Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Februar 2019 Melden Teilen Geschrieben 14. Februar 2019 Kommentier mal bitte den robocopy Teil aus und lass Dir die Zielpfade ausgeben .... sie sollten mit einem Backslash enden. Zitieren Link zu diesem Kommentar
grc 0 Geschrieben 14. Februar 2019 Autor Melden Teilen Geschrieben 14. Februar 2019 die werden richtig ausgegeben, aber ohne Backslash Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Februar 2019 Melden Teilen Geschrieben 14. Februar 2019 OK ... dann versuch doch mal, den Backslash noch dranzuhängen und schau was robocopy draus macht. Zitieren Link zu diesem Kommentar
grc 0 Geschrieben 14. Februar 2019 Autor Melden Teilen 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. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Februar 2019 Melden Teilen Geschrieben 14. Februar 2019 Versuch mal zusätzlich die Option "/XJ" für robocopy. Zitieren Link zu diesem Kommentar
grc 0 Geschrieben 14. Februar 2019 Autor Melden Teilen Geschrieben 14. Februar 2019 Damit scheint es nun zu funktionieren......Werde das noch weiter testen. Danke für deine Hilfe Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Februar 2019 Melden Teilen 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. Zitieren Link zu diesem Kommentar
daabm 1.366 Geschrieben 14. Februar 2019 Melden Teilen 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 Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Februar 2019 Melden Teilen 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. Zitieren Link zu diesem Kommentar
daabm 1.366 Geschrieben 15. Februar 2019 Melden Teilen 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 Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 15. Februar 2019 Melden Teilen Geschrieben 15. Februar 2019 Als wären wir seelenverwandt ... im richtigen Leben würden wir gegenseitig unsere ...... Zitieren Link zu diesem Kommentar
daabm 1.366 Geschrieben 15. Februar 2019 Melden Teilen Geschrieben 15. Februar 2019 Bäh... Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.