conan123
Goto Top

Batch Programmierung um Bilder zu kopieren

Hallo Leute,

ich habe eine Frage. Ich bräuchte eine Batch Datei, die Bilder von einem Ordner in einen anderen kopiert. Das habe ich auch schon realisiert, aber mein Problem ist es, dass alle Bilder kopiert werden. Ich bräuchte aber eine Abfrage das nur die Bilder kopiert werden, die noch nicht in dem neuen Ordner sind. Ich stelle mal meine bisherige Arbeit rein. Hoffe Ihr könnt mir helfen.

@echo off

copy "C:\Users\Conan\Desktop\Test\*.jpg" "C:\Users\Conan\Desktop\Test2\"

pause.

exit

Content-Key: 147870

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

Printed on: April 18, 2024 at 22:04 o'clock

Member: Mesterdisast
Mesterdisast Jul 28, 2010 at 16:45:22 (UTC)
Goto Top
hallo

also bei mir würde es so lauten:

xcopy "C:\Users\Conan\Desktop\Test\*.jpg" "C:\Users\Conan\Desktop\Test2" /D /E /Y /I

pause
ende
zum xcopy-Befehl:
/D bedeutet nur neuere Dateien
/E Unterverzeichnisse mitnehmen
/Y Dateien ohne Nachfragen überschreiben
/I neuen Ordner anlegen, falls nicht vorhanden

mfg mesterdisast
Member: Conan123
Conan123 Jul 28, 2010 at 16:49:39 (UTC)
Goto Top
Vielen, vielen Dank. Du hast es so gut erklärt, dass ich es jetzt auch kapiert habe. Fettes Dankeschön.
Member: Mesterdisast
Mesterdisast Jul 28, 2010 at 16:50:22 (UTC)
Goto Top
kein problem dafür sind wir ja da
Member: Biber
Biber Jul 28, 2010 at 17:00:24 (UTC)
Goto Top
[OT]
Zitat von @Mesterdisast:
kein problem dafür sind wir ja da
Wofür allerdings niemand zuständig ist außer dem glücklichen und zufriedenen Beitragsersteller ...
-> das ist die Änderung des oben transparent angezeigten Häkchens auf WG-Pizzafarben.

[/OT]
Mitglied: 60730
60730 Jul 28, 2010 at 22:42:35 (UTC)
Goto Top
[OT]
@ Biber - bist aber streng heute face-wink
[/OT]
Aber ich bin stranger in the Night

Bei mir würde das so aussehen:
for /f "tokens=1,* delims=" %%a in ('"dir /b %userprofile%\Desktop\Test\*.jpg"') do if not exist "%userprofile%\Desktop\Test\%%a" copy "%userprofile\Desktop\Test\%%a.jpg" "%userprofile\Desktop\Test2\%%a.jpg"  

..denn wenn uns pre Arnold Schwarzwaldbecher *gg* schreibt -
Ich bräuchte aber eine Abfrage das nur die Bilder kopiert werden, die noch nicht in dem neuen Ordner sind.
Und wenn mit Abfrage tatsächlich das gemeint ist, was wir alle denken.....
...brauch ich kein /D und ein /y schon zweimal nicht face-wink
[OT²]
Ps: Hab ich eigentlich schonmal meine Verwunderung geäußert, woher der Insider @echo off bei so simpelscripten herkommt?
Bis ich @ und Echo off hintereinander in eine Zeile getan hab, hab ich schon x gute alte stabile Cherrys kleingetippt.
[/OT²]
Member: Mesterdisast
Mesterdisast Jul 29, 2010 at 06:56:25 (UTC)
Goto Top
Zitat von @60730:
for /f "tokens=1,* delims=" %%a in ('"dir /b %userprofile%\Desktop\Test\*.jpg"') do if not exist
"%userprofile%\Desktop\Test\%%a" copy "%userprofile\Desktop\Test\%%a.jpg"
"%userprofile\Desktop\Test2\%%a.jpg"
also das musst du mir dann mal erklären ich habe die Sicherungsaufgaben bei mir immer so gelöst wie oben beschrieben


mfg
mesterdisast
Member: EffEins
EffEins Jul 29, 2010 at 07:22:00 (UTC)
Goto Top
bei mir immer so gelöst wie oben beschrieben

Geschmäcker sind nun mal unterschiedlich. Mir würde eine Robocopy-Zeile am besten schmecken.
Mitglied: 60730
60730 Jul 29, 2010 at 10:24:23 (UTC)
Goto Top
Zitat von @Mesterdisast:
also das musst du mir dann mal erklären ich habe die Sicherungsaufgaben bei mir immer so gelöst wie oben beschrieben

*hmm muß ich?

Nagut - das ist zwar kein Backup, sondern max - eine Sicherungskopie aber ich will ja nicht päpstlicher als Voitila sein.

Wenn ich nach einem Weg gefragt werde - keine Dateien, die bereits im Ziel sind zu kopieren, dann ist das eine andere Ausgangssituation, als ich es mit einem /d lösen würde.
Denn sind im Ziel "originale" und in der Quelle evtl. veränderte - oder ganz andere - die (typisch Digicam) nur den gleichen Namen haben - bekommst du mit /D zwar scheinbar irgendwas gemacht, aber das war - so wie ich es verstanden habe - ja nicht die Frage.

Sprich - die DIgicam liefert in der Quelle immer und immer wieder Dateien ab, die es evtl. im Ziel noch nicht gibt.
Die aber einen Dateinamen haben, der evtl. im Ziel vorhanden ist - gleicher Name - andere Datei - die in der Quelle ist aktueller und überschreibt mit /d die namensgleiche Datei im Ziel.
Die - in dem Beispiel aber einen ganz anderen Inhalt hat.
Bei Kopieraktionen mit jpgs denke ich halt auch an Variante Digicam.

Aber all das ist reiner Spekulatius - denn die Frage ist ja gelöst - evtl. "falsch" formuliert, dass deine Lösung "trotzdem" richtig ist.
Das weiß nur der TO.
Und was sagt der dazu?

Ergo - jedes "Problem" andere Lösung - so komme ich (jeder?) am weitesten.

Gruß