Powershell Skript - Dateien aus Verzeichnis verschieben und auf mehrere Verzeichnisse aufteilen
Guten Morgen,
leider kenne ich mich mit Powershell noch nicht wirklich aus, benötige aber mit etwas Zeitdruck ein Skript um sehr große Verzeichnisse
(teilweise bis zu 1 MIO Dateien), auf separate Unterverzeichnisse zu verschieben.
Diese Unterverzeichnisse sollten nicht mehr als 45.000 Dateien aufnehmen.
Wichtig wäre, das alle Dateien mit gleichem Dateinamen, im gleichen Zielordner landen. Es kann also unterschiedliche Dateiendungen zu einem Dateinamen geben, mindestens
ist aber immer eine <Dateiname-xy>.start dabei. Vielleicht ist auch möglich, die zu verschiebenden Dateien optional und vor dem Verschieben, in ein separates Sicherungsverzeichnis
zu verschieben.
Ich hoffe darauf, dass jemand von den Powershell Experten evtl. schon etwas ähnliches vorliegen hat.
Danke an Alle.
Michael
leider kenne ich mich mit Powershell noch nicht wirklich aus, benötige aber mit etwas Zeitdruck ein Skript um sehr große Verzeichnisse
(teilweise bis zu 1 MIO Dateien), auf separate Unterverzeichnisse zu verschieben.
Diese Unterverzeichnisse sollten nicht mehr als 45.000 Dateien aufnehmen.
Wichtig wäre, das alle Dateien mit gleichem Dateinamen, im gleichen Zielordner landen. Es kann also unterschiedliche Dateiendungen zu einem Dateinamen geben, mindestens
ist aber immer eine <Dateiname-xy>.start dabei. Vielleicht ist auch möglich, die zu verschiebenden Dateien optional und vor dem Verschieben, in ein separates Sicherungsverzeichnis
zu verschieben.
Ich hoffe darauf, dass jemand von den Powershell Experten evtl. schon etwas ähnliches vorliegen hat.
Danke an Alle.
Michael
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 395106
Url: https://administrator.de/forum/powershell-skript-dateien-aus-verzeichnis-verschieben-und-auf-mehrere-verzeichnisse-aufteilen-395106.html
Ausgedruckt am: 03.05.2025 um 00:05 Uhr
1 Kommentar

$ordner = 'd:\ordner'
dir $ordner -File | group Basename | %{
$d = "$ordner\$($_.Basename)"
If (!(Test-Path $d)){md $d -Force | out-null}
$_.Group | move-item -destination $d -verbose
}
Gruß A.