toffinio
Goto Top

Batch: Dateien in Unterordnern überschreiben

Hallo zusammen,

folgendes Problem. Ich schildere es anhand von jpeg Dateien. Spielt jedoch keine Rolle.

ich habe 2 Verzeichnisse:
(1) Verzeichnis A mit sehr vielen Unterordnern. In diesen Unterordnern liegen jeweils eine Vielzahl von Bilddateien z.B. insgesamt 5000 Dateien verteilt auf die jeweiligen Unterordner. Alle Dateien sind individuell benannt. Es kommen keine Duplikate vor.
C:\Bilder\0001 (Inhalt: 14.jpg, 28.jpg, 25.jpg, 29.jpg)
C:\Bilder\0002 (Inhalt: 100.jpg, 167.jpg, 234.jpg, 54.jpg)
C:\Bilder\0003 (Inhalt: 45.jpg, 87.jpg, 43.jpg, 55.jpg, 11.jpg, 98.jpg)
usw.
(2) Verzeichnis B liegen Bilddateien aus diesen 5000 Dateien (z.B. 100 Stk), die in Verzeichnis A auch auftauchen. Diese Dateien aus Verzeichnis B sind allerdings aktueller und sollen wieder in das Hauptverzeichnis A zurück kopiert werden um die alten bzw. fehlerhaften Dateien zu ersetzen.

Wie schaffe ich es, dass die Dateinamen aus B gesucht werden in den Unterordnern und die Datei auch ersetzt wird?

Danke und Gruß

Content-Key: 1389487712

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

Ausgedruckt am: 28.03.2024 um 19:03 Uhr

Mitglied: 149569
149569 14.10.2021 aktualisiert um 18:41:32 Uhr
Goto Top
Mit der Powershell z.B.
$filesA = dir "d:\ordnerA" -file -recurse  
$filesB = dir "d:\ordnerB" -file -recurse  

Foreach($fileB in $filesB){
    $filesA | ?{$_.Name -eq $fileB.Name} | %{copy-item $fileB.Fullname -Destination $_.Fullname -force -verbose}
}
Mitglied: Toffinio
Toffinio 14.10.2021 um 19:23:29 Uhr
Goto Top
Hallo hacktor,

ich habe deine Antwort mal ausprobiert mit Dummy Ordnern. Letztendlich wie oben beschrieben ordnerA und ordnerB.
Habe in ordnerA Unterordner angelegt mit Textdateien. Im OrdnerB liegen eine Auswahl an Textdateien aus A.

Ich bekomme die Fehlermeldung Textdatei aus A kann nicht mit sich selbst überschrieben werden.
1
Mitglied: 149569
Lösung 149569 14.10.2021 aktualisiert um 22:08:01 Uhr
Goto Top
Zitat von @Toffinio:

Hallo hacktor,

ich habe deine Antwort mal ausprobiert mit Dummy Ordnern. Letztendlich wie oben beschrieben ordnerA und ordnerB.
Habe in ordnerA Unterordner angelegt mit Textdateien. Im OrdnerB liegen eine Auswahl an Textdateien aus A.

Ich bekomme die Fehlermeldung Textdatei aus A kann nicht mit sich selbst überschrieben werden.
1

Nö klappt hier ohne Probleme, guckst du hier die Online Demo

https://tio.run/##bY3LDoIwEEX3/YpZYKILNLo3hsa49BcMliE0ForT4iPIt2N5@UBn08 ...

Ich schätze du hast entweder statt unterschiedlichen Dateien unbewusst Hardlinks von diesen im zweiten Ordner erstellt oder die Ordner falsch angegeben.
Mitglied: Toffinio
Toffinio 15.10.2021 um 08:42:31 Uhr
Goto Top
Ach mensch....ja es funktioniert. Hatte den zweiten Ordner tatsächlich falsch angegeben. Blöder Fehler.

Vielen Dank du hast mir sehr geholfen face-smile
Mitglied: 149569
149569 15.10.2021 aktualisiert um 11:06:42 Uhr
Goto Top
Friday solves all your problems 🐟😉