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

Printed on: May 4, 2024 at 19:05 o'clock

Mitglied: 149569
149569 Oct 14, 2021 updated at 16:41:32 (UTC)
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}
}
Member: Toffinio
Toffinio Oct 14, 2021 at 17:23:29 (UTC)
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
Solution 149569 Oct 14, 2021 updated at 20:08:01 (UTC)
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.
Member: Toffinio
Toffinio Oct 15, 2021 at 06:42:31 (UTC)
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 Oct 15, 2021 updated at 09:06:42 (UTC)
Goto Top
Friday solves all your problems 🐟😉