Powershell Datei kopieren mit ACL Script funktioniert nicht
Hallo Zusammen
Ich habe einen Skript geschrieben um Einen Datei zu kopieren mit ACL. Davor sollte er noch testen ob der Pfad vorhanden ist, wenn nicht Fehlerausgabe und das Skript sollte sich auch nicht beenden, wenn der Pfad nicht vorhanden ist. Was habe ich falsch gemacht? Könnt Ihr mir bitte helfen
Danke im Vorraus
XPXY15
Ich habe einen Skript geschrieben um Einen Datei zu kopieren mit ACL. Davor sollte er noch testen ob der Pfad vorhanden ist, wenn nicht Fehlerausgabe und das Skript sollte sich auch nicht beenden, wenn der Pfad nicht vorhanden ist. Was habe ich falsch gemacht? Könnt Ihr mir bitte helfen
Cls
$copypfad= Read-Host "Bitte geben Sie der zu kopierende Pfad ein "
$pastepfad= Read-Host "Geben Sie den Ziel Pfad ein"
$test1 = test-path -path $copypfad
$test2 = test-path -path $pastepfad
if($test1 -like "False"){
Write-Host "Bitte geben Sie ein gültiges Pfad ein! "
return
}
if($test2 -like "False"){
Write-Host "Bitte geben Sie ein gültiges Pfad ein! "
return
}
Copy-item -path $copypfad -Destination $pastepfad
$ACL=Get-Acl $copypfad #Holt Die ACL von alten Ordner
Set-Acl -path $pastepfad -AclObject $ACL #Kopiert es in den neuen Pfad
Danke im Vorraus
XPXY15
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 309103
Url: https://administrator.de/contentid/309103
Ausgedruckt am: 26.11.2024 um 00:11 Uhr
4 Kommentare
Neuester Kommentar
Das löst nicht alle Probleme(Copy-item : Ein Element mit dem angegebenen Namen "C:\test2\test" ist bereits vorhanden.)...,
aber sonst funktioniert das gut:
aber sonst funktioniert das gut:
Cls
Do{$copypfad= Read-Host "Bitte geben Sie der zu kopierende Pfad ein "}
While((Test-Path $copypfad) -ne $true)
Do{$pastepfad= Read-Host "Geben Sie den Ziel Pfad ein"}
While((Test-Path $pastepfad) -ne $true)
Copy-item -path $copypfad -Destination $pastepfad
$ACL=Get-Acl $copypfad #Holt Die ACL von alten Ordner
Set-Acl -path $pastepfad -AclObject $ACL #Kopiert es in den neuen Pfad
cls
while($true){
$copypfad = Read-Host "Bitte geben Sie der zu kopierende Pfad ein "
if(!(Test-Path $copypfad)){
write-host "Path does not exists, repeat your entry." -F Red
}else{break}
}
while($true){
$pastepfad = Read-Host "Geben Sie den Ziel Pfad ein" Pfad ein "
if(!(Test-Path $pastepfad)){
write-host "Target path does not exists, repeat your entry." -F Red
}else{break}
}
Try{
Copy-item -path $copypfad -Destination $pastepfad
$ACL=Get-Acl $copypfad
Set-Acl -path $pastepfad -AclObject $ACL
}catch{
throw $_.Exception.Message
}