jack005
Goto Top

Dateien in gleiche Ordnerstruktur verschieben mit Powershell

Guten Morgen zusammen !

Ich weiß, dass es schon viele Beiträge zu diesem Thema gibt. Ich würde das nur gerne per Powershell machen, habe aber dazu noch nichts gefunden..

Also:
Ich habe einen Ordner X und einen Unterordner Y in dem Dateien liegen. Jetzt möchte ich, dass diese Dateien in ein Archiv verschoben werden, in dem es genau die gleiche Ordnerstruktur gibt. Habe mir auch schon ein Batch File geschrieben, was diese Struktur (ohne Dateien) kopiert.

Ansonsten ist hier mein Powershell-Befehl, den ich bis jetzt habe:

gci 'D:\Odner\*.*' -Recurse | ?{$_.CreationTime -lt (get-date).AddMonths(-1) -and ?{$_.LastWriteTime -lt (get-date).AddMonths(-1)} | copy-item -destination D:\Archiv

Wenn ich diesen Befehl starte, werden aber alle Dateien "auf einer Ebene" gespeichert. Ich hätte aber gerne, dass z.B Datei A dann auch wieder im Archiv im Unterordner Y liegt.

Danke im Voraus für die Antworten.

Content-Key: 266517

Url: https://administrator.de/contentid/266517

Printed on: April 19, 2024 at 00:04 o'clock

Member: colinardo
Solution colinardo Mar 17, 2015, updated at Mar 18, 2015 at 06:31:49 (UTC)
Goto Top
Hallo Jack005,
machst du mit Powershell auf diese Art und Weise:
# Quellordner
$sourcePath = "D:\Ordner"  
# Zielordner
$targetPath = "D:\Archiv"  
# für jedes File das den Kriterien entspricht
gci $sourcePath -Recurse -Filter *.* | ?{$_.CreationTime -lt (get-date).AddMonths(-1) -and $_.LastWriteTime -lt (get-date).AddMonths(-1)} | %{
    # erzeuge Ordnerpfad für Ziel indem im Pfad der Datei der Quell-Ordner durch den Zielordner ersetzt wird
    $newPath = $_.DirectoryName.Replace($sourcePath,$targetPath)
    # wenn Zielordner noch nicht existiert erstelle ihn
    if (!(Test-path $newPath)){md $newPath}
    # verschiebe Datei in den Zielordner im Archiv
    move-item $_.FullName $newPath -Force
}
Grüße Uwe
Member: Jack005
Jack005 Mar 17, 2015 at 14:43:32 (UTC)
Goto Top
Hallo und danke für die schnelle Antwort.

Bin heute an der Arbeit leider nicht mehr dazu gekommen es zu testen, mache ich dann aber gleich morgen früh face-smile

Gruß
Member: Jack005
Jack005 Mar 18, 2015 at 06:33:05 (UTC)
Goto Top
Vielen, vielen Dank ! face-smile
Klappt perfekt und genau so, wie ich es mir vorgestellt habe.

Gruß