Benutzer mit den meisten Antworten
Warten bis "copy" abgeschlossen ist

Frage
-
Hallo,
ich habe ein Skript indem ein copy-Vorgang gestartet wird und nach dem copy-Vorgang eine Meldung in ein Textfile geschrieben wird. Jetzt befindet sich der copy-Befehl und die Meldung in einer if-Schleife und die Meldungen werden nicht meht geschrieben. Wenn ich den copy-Befehl auskommentiere erscheinen die Meldungen wieder.
Gibt es eine Möglichkeit expliziet auf das Ende des copy-Vorganges zu warten und dann werden die Meldungen verschickt?
Gruß
Armin
Antworten
-
- Als Antwort vorgeschlagen Denniver ReiningMVP, Moderator Sonntag, 6. Dezember 2015 20:59
- Als Antwort markiert Denniver ReiningMVP, Moderator Montag, 7. Dezember 2015 14:52
Alle Antworten
-
Ich weis nicht recht ob ich deine Frage richtig interpretiere.
Copy-Item sollte eigentlich blocken und erst später mit dem Skript fortsetzen.Versuche doch mal folgendes in deine Schleife zu bauen.
$script = {Copy-Item -Path "Pfad" -Destination "Ziel"} Invoke-Command -ScriptBlock $script -AsJob -JobName "Job1" Get-Job -Name "Job1" | Wait-Job <Deine Ausgabe in Textfile>
Grüße Andy
- Als Antwort vorgeschlagen Denniver ReiningMVP, Moderator Freitag, 27. November 2015 22:13
- Nicht als Antwort vorgeschlagen Denniver ReiningMVP, Moderator Freitag, 27. November 2015 22:13
-
Wenn du es nicht per "copy" machst (denke du startest einen Batch?!) sondern per Powershell selbst, läuft er sequentiell weiter:
Copy-Item C:\Temp\folder -Destination D:\Folder -recurse
Ansonsten wie hpotsirhc geschrieben hat - Code posten, damit wir das Problem besser verstehen können.
Best regards,
David das Neves
Technology Specialist - Consulting Services
Computacenter AG & Co. oHG - Munich
Blog
Creating Powershell GUIs with XAML? Take a look! PSGUI
- Bearbeitet David das Neves Donnerstag, 26. November 2015 11:52
-
if ($z -eq 1) { $Ordnernamen = get-date((get-date).adddays(-1)) -uFormat "%d_%m_%Y" #new-item -itemtype directory $Ordnernamen $d = $i.name + $Ordnernamen copy g:\WindowsImageBackup $d -Recurse "Die Sicherung vom "+ $Ordnernamen + " wurde auf das Laufwerk "+ $i.name + "\ kopiert." | Out-File c:\Tools\history_copy.txt -append "Die Sicherung vom "+ $Ordnernamen + " wurde auf das Laufwerk "+ $i.name + "\ kopiert." | Out-File c:\Tools\event.txt -append }
Hallo, also hier mal der Code.
Vor derIf-Schleife hat alles fuktioniert. Nach einbinden in die If-Schleife wird kopiert aber nicht ins File geschrieben.
Gruß
Armin
-
Hast du schon mal durchdebugged? ISE - BreakPoints setzen mit F9 und per F5/F10 durchgehen.
Hast du irgendwo dein Verhalten beim Fehler definiert? -Erroraction
Eventuell kriegt er beim Copy oder Schreiben irgendeinen Fehler?
Best regards,
David das Neves
Technology Specialist - Consulting Services
Computacenter AG & Co. oHG - Munich
Blog
Creating Powershell GUIs with XAML? Take a look! PSGUI -
Hallo,
Fehler konnte ich jetzt nach ein paar Versuchen mit Einzelschritten nicht feststellen. Es laufen alle Befehle nacheinander durch. Nur eben das komplette Skript nicht.
Ich stelle jetzt mal um und lass mir die Protokollierung einfach danach in einer weiteren Schleife nach Überprüfung der kopierten Ordner schicken.
Gruß
Armin
-
- Als Antwort vorgeschlagen Denniver ReiningMVP, Moderator Sonntag, 6. Dezember 2015 20:59
- Als Antwort markiert Denniver ReiningMVP, Moderator Montag, 7. Dezember 2015 14:52