copy-item funktioniert für Unterverzeichnisse nur das zweite Mal, wenn ein Skript ausgeführt wird
Ich habe ein Skript, das ich zum Sichern von Dateien verwende. Aus irgendeinem Grund werden nur die Dateien und das Verzeichnis des Unterordners kopiert, wenn das Skript das zweite Mal ausgeführt wird. Die Fehlermeldung lautet
Msgstr "Container kann nicht in vorhandene Blattelemente kopiert werden".
Ich suche nach diesem Fehler und sie sagen, ich kopiere eine Datei auf denselben Dateinamen, aber dies ist ein Unterverzeichnis, das nicht einmal erstellt wird, wenn das Skript zum ersten Mal ausgeführt wird. Der Zielordner ist beim ersten Ausführen leer. Irgendwelche Ideen?
Das Quellverzeichnis sieht so aus:
\\DRIVE01\Svcs \Credential \Forms file and dir list #this dir level doesn't get copied the first time, but the files do
So sieht das toLoc nach der ersten Ausführung aus:
me\Documents\2018\powershellFiles\toLoc \Credential \Forms file list #the first time the files get copied without the dirs at this level
Das ist mein Skript:
function CopyFileToFolderUNC($SourcePath, $DestinationPath){ Copy-Item -Path $SourcePath/* -Destination $DestinationPath #Copy-Item -Path source -Destination target -Recurse -Force } #################start here################################## $tempSource = @("\\DRIVE01\Svcs\Credentialing\FORMS") #eventually will have list of more than one here $ToLocation = "C:\Users\me\Documents\2018 \powershellFiles\toLoc\Credentialing\FORMS\" #this will eventually be array with multiple in it for($i=0; $i -lt ($tempSource.Length); $i++) { CopyFileToFolderUNC $tempSource[$i] $ToLocation }
Bevor ich von einem foreach zu einer for-Schleife wechselte, dachte ich, dass es für die Subdirs im toLoc funktionierte. Ich brauche eine for-Schleife, weil es einfacher wird, mit Arrays für die Quell- und Ziel-Dir-Strings umzugehen, die als nächstes folgen.
0 Antworten auf die Frage
Verwandte Probleme
-
2
PowerShell Version 5: Out-Default-Ausgabe in verschachtelten Funktionen unterdrücken
-
0
"Dieses Update ist nicht auf Ihr System anwendbar"
-
4
Powershell, um alle Dateien mit einer bestimmten Dateierweiterung zu löschen
-
0
Verwenden von Workflows in PowerShell
-
1
Invoke-WebRequest in PowerShell Version 5 geändert
-
2
In der PowerShell-Hilfe fehlen alle about_ * -Themen. Was gibt?
-
0
Größe der PowerShell-Konsole ändern
-
0
Get-WmiObject wirft "Ungültiger Zugriff auf den Speicherort".
-
1
Wie kann ich eine Zeichenfolge mit einem Platzhalter herausfiltern und mit einer Änderung in eine an...
-
1
Warum muss ich das letzte einzelne Anführungszeichen in dieser Powershell-Here-Zeichenfolge entziehe...