Beim Abgleich existierende Datei nicht ersetzen sondern neuere in anderes Verzeichnis kopieren
Hallo miteinander,
leider habe ich in der Suche nicht das Passende gefunden.
Ich benötige eine Batch welche beim Abgleich erst prüft ob die Datei im Zielverzeichnis bereits vorhanden ist.
Wenn nicht wird ganz normal kopiert.
Wenn ja, soll die neuere Datei in einen anderen (temporären) Ordner abgelegt werden wo ich diese dann per Batch umbenennen lasse.
Das mit dem Umbenennen klappt schon mal ganz gut, nur der Schritt davor nicht.
Vielen Dank schon mal für die Lösungsansätze.
Grüße Machete
leider habe ich in der Suche nicht das Passende gefunden.
Ich benötige eine Batch welche beim Abgleich erst prüft ob die Datei im Zielverzeichnis bereits vorhanden ist.
Wenn nicht wird ganz normal kopiert.
Wenn ja, soll die neuere Datei in einen anderen (temporären) Ordner abgelegt werden wo ich diese dann per Batch umbenennen lasse.
Das mit dem Umbenennen klappt schon mal ganz gut, nur der Schritt davor nicht.
Vielen Dank schon mal für die Lösungsansätze.
Grüße Machete
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 156255
Url: https://administrator.de/contentid/156255
Ausgedruckt am: 15.11.2024 um 09:11 Uhr
15 Kommentare
Neuester Kommentar
moin,
wie nix gefunden?
Demo für den cmd Prompt:
edit: dann halt so herum mit fcp
edit² noch ein x gekauft und getestet:
edit³ für leerzeichen noch drei paar Gänsefedern und Füße dazu (die zugekaufte Buchstabensuppe wird langsam teuer)
Gruß
wie nix gefunden?
Demo für den cmd Prompt:
edit: dann halt so herum mit fcp
edit² noch ein x gekauft und getestet:
edit³ für leerzeichen noch drei paar Gänsefedern und Füße dazu (die zugekaufte Buchstabensuppe wird langsam teuer)
for /r laufwerk:\pfad\quelle\ %a in (*.fcp) do if not exist "ziel1:\%~nxa" (copy "%a" ziel2\) else copy "%a" ziel1\
und wie immer Benutzung nur auf eigene Gefahr und in Testordnern testen.Gruß
moin,
wenn ich folgendes mache:
Lasse ich das zum zweitel mal laufen - merke ich - upps da ist ein "fehlerchen" drin...
Ergo:
Muß die Zeile (die Variable) einen Buchstaben mehr bekommen.
Ergo: diese Demo funktioniert und zeigt logischwerweise auch alles an:
Diese Zeile bekomme hier immer die Meldung dass er die angegebene Datei nicht finden kann. jedoch nicht und selbst wenn - würde da auch noch mehr stehen.
Von daher.....etwas mehr Info/Probieren deinerseits wäre vielleicht auch ne Möglichkeit gewesen zum Ziel zu kommen....
Wie gesagt - er zeigt ja an, was er macht.
Gruß
wenn ich folgendes mache:
- Ordner c:\test\1 erstellen
- Ordner c:\test\2 erstellen
- Ordner c:\test\3 erstellen
- In Ordner c:\test\1 eine 123.fcp mit nem dummyinhalte erstelle
- diesen Schnippsel das erste mal in einer Dosbox laufen lasse:
for /r C:\test\1\ %a in (*.fcp) do if not exist C:\test\2\%~na (copy %a C:\test\2\) else copy %a C:\test\3\
- Ist diese Datei von 1 zu 2 kopiert worden.
for /r C:\test\1\ %a in (*.fcp) do if not exist C:\test\2\%~na (copy %a C:\test\2\) else copy %a C:\test\3\
if not exist C:\test\2\123 (copy C:\test\1\123.fcp C:\test\2\ ) else copy C:\test\1\123.fcp C:\test\3\
1 Datei(en) kopiert.
N:\>for /r C:\test\1\ %a in (*.fcp) do if not exist C:\test\2\%~na (copy %a C:\t
est\2\) else copy %a C:\test\3\
N:\>if not exist C:\test\2\123 (copy C:\test\1\123.fcp C:\test\2\ ) else copy C
:\test\1\123.fcp C:\test\3\
C:\test\2\123.fcp überschreiben? (Ja/Nein/Alle):
0 Datei(en) kopiert.
Muß die Zeile (die Variable) einen Buchstaben mehr bekommen.
for /r C:\test\1\ %a in (*.fcp) do if not exist C:\test\2\%~nxa (copy %a C:\test\2\) else copy %a C:\test\3\
- und siehe da:
for /r C:\test\1\ %a in (*.fcp) do if not exist C:\test\2\%~nxa (copy %a C:\test\2\) else copy %a C:\test\3\
if not exist C:\test\2\123.fcp (copy C:\test\1\123.fcp C:\test\2\ ) else copy C:\test\1\123.fcp C:\test\3\
1 Datei(en) kopiert.
dir /s c:\test\*.fcp
Verzeichnis von c:\test\1
03.12.2010 09:42 3 123.fcp
1 Datei(en) 3 Bytes
Verzeichnis von c:\test\2
03.12.2010 09:42 3 123.fcp
1 Datei(en) 3 Bytes
Verzeichnis von c:\test\3
03.12.2010 09:42 3 123.fcp
1 Datei(en) 3 Bytes
Anzahl der angezeigten Dateien:
3 Datei(en) 9 Bytes
Diese Zeile bekomme hier immer die Meldung dass er die angegebene Datei nicht finden kann. jedoch nicht und selbst wenn - würde da auch noch mehr stehen.
Von daher.....etwas mehr Info/Probieren deinerseits wäre vielleicht auch ne Möglichkeit gewesen zum Ziel zu kommen....
Wie gesagt - er zeigt ja an, was er macht.
Gruß
@bastla:
tja das kommt davon, wenn man abends Demos fürn den cmd Prompt baut
Und sieghe da ->
Das System kann die angegebene Datei nicht finden.
wie gut, dass ich nur ein paar Pfade aber niemals Dateien mit leerzeichen habe - soll mir ne Lehre sein
Und siehe da -
ich gehe dem oberen demo schnippsel noch ein paar Gänse samt Füsschen kaufen.
Gruß
tja das kommt davon, wenn man abends Demos fürn den cmd Prompt baut
N:\>cd /d c:
C:\>md test
C:\>md test\1
C:\>md test\2
C:\>md test\3
C:\>echo 123.fcp>c:\test\1\123.fcp
C:\>echo "123 456.fcp">"c:\test\1\123 456.fcp"
C:\>echo "123 456.fcp">"c:\test\1\123 456 789.fcp"
C:\>for /r C:\test\1\ %a in (*.fcp) do if not exist C:\test\2\%~nxa (copy %a C:\
test\2\) else copy %a C:\test\3\
C:\>if not exist C:\test\2\123 456 789.fcp (copy C:\test\1\123 456 789.fcp C:\te
st\2\ ) else copy C:\test\1\123 456 789.fcp C:\test\3\
Das System kann die angegebene Datei nicht finden.
C:\>if not exist C:\test\2\123 456.fcp (copy C:\test\1\123 456.fcp C:\test\2\ )
else copy C:\test\1\123 456.fcp C:\test\3\
Das System kann die angegebene Datei nicht finden.
C:\>if not exist C:\test\2\123.fcp (copy C:\test\1\123.fcp C:\test\2\ ) else co
py C:\test\1\123.fcp C:\test\3\
1 Datei(en) kopiert.
Das System kann die angegebene Datei nicht finden.
wie gut, dass ich nur ein paar Pfade aber niemals Dateien mit leerzeichen habe - soll mir ne Lehre sein
C:\>for /r C:\test\1\ %a in (*.fcp) do if not exist "C:\test\2\%~nxa" (copy "%a"
C:\test\2\) else copy "%a" C:\test\3\
C:\>if not exist "C:\test\2\123 456 789.fcp" (copy "C:\test\1\123 456 789.fcp" C
:\test\2\ ) else copy "C:\test\1\123 456 789.fcp" C:\test\3\
1 Datei(en) kopiert.
C:\>if not exist "C:\test\2\123 456.fcp" (copy "C:\test\1\123 456.fcp" C:\test\2
\ ) else copy "C:\test\1\123 456.fcp" C:\test\3\
1 Datei(en) kopiert.
C:\>if not exist "C:\test\2\123.fcp" (copy "C:\test\1\123.fcp" C:\test\2\ ) els
e copy "C:\test\1\123.fcp" C:\test\3\
1 Datei(en) kopiert.
C:\>dir c:\test\*.fcp /s
Verzeichnis von c:\test\1
03.12.2010 11:46 15 123 456 789.fcp
03.12.2010 11:46 15 123 456.fcp
03.12.2010 11:46 9 123.fcp
3 Datei(en) 39 Bytes
Verzeichnis von c:\test\2
03.12.2010 11:46 15 123 456 789.fcp
03.12.2010 11:46 15 123 456.fcp
03.12.2010 11:46 9 123.fcp
3 Datei(en) 39 Bytes
Verzeichnis von c:\test\3
03.12.2010 11:46 9 123.fcp
1 Datei(en) 9 Bytes
Gruß
moin,
Ich versuche das mal zu übersetzen...
Für jeden Treffer in "quelle", der irgendwie ins Muster *.fcp passt - kopiere wenn die nicht in "Ziel" vorhanden ist - diese nach Temp - andernfalls kopiere diese nach Temp.
Ergo _ egal ob oder ob nicht - als "ziel" wird immer temp genommen - ich hatte das aber anders skizziert:
Gruß
- kunststück...
C:\>for /r C:\Users\mag\Desktop\Quelle\ %a in (*.fcp)do if not exist C:\Users\mag\Desktop\Ziel\%~nxa (copy %a C:\User\mag\Desktop\Temp) else copy %a C:\Users\mag\Desktop\Temp\
Ich versuche das mal zu übersetzen...
Für jeden Treffer in "quelle", der irgendwie ins Muster *.fcp passt - kopiere wenn die nicht in "Ziel" vorhanden ist - diese nach Temp - andernfalls kopiere diese nach Temp.
Ergo _ egal ob oder ob nicht - als "ziel" wird immer temp genommen - ich hatte das aber anders skizziert:
- Für jeden Treffer in "quelle", der irgendwie ins Muster*.fcp passt - kopiere wenn die nicht in "Ziel" vorhanden ist - diese nach ziel - andernfalls kopiere diese nach Temp.
Gruß
Servus,
du wolltest doch einen Lösungsansatz.
Ich dachte - gelesen zu haben - du hättest bereits vorm Erstellen deiner Frage gesucht und trotzdem nix gefunden....
Hast du ganz offensichtlich weder vorm Frage hier stellen, als auch danach nicht gemacht. - Find ich traurig...
Gruß
du wolltest doch einen Lösungsansatz.
- Mit welchem Befehl wurde denn die Lösung gefunden?
- Wo findet man Hilfe zu dem Befehl? (in dem kleinen schwarzen Kästchen)
Ich dachte - gelesen zu haben - du hättest bereits vorm Erstellen deiner Frage gesucht und trotzdem nix gefunden....
Hast du ganz offensichtlich weder vorm Frage hier stellen, als auch danach nicht gemacht. - Find ich traurig...
Gruß
Moin,
lass es mich in kurze Worte fassen (so ich dessen mächtig bin, was viele zu recht bezweifeln)
Eine Unterhaltung sehe ich bidirektional - Dialog statt monolog.
Wie ich es in der Schule (nicht nur die des Lebens, sondern auch die mit den Zeugnisen) gelernt habe - bringt man jemandem nachhaltig etwas bei, wenn man Ihm Aufgaben stellt, die er lösen muß.
Deine Aufgabe an uns - die ich aufgenommen habe - einen vom User HelgeSchneider angefangenen Denkansatz für dein Problem zu erweiterten.
Jeder, der hier mitgeholfen hat, tippte Wörter wie:
gewesen, genauso wie den Pistaziengrünen Haken an diesen Fred.
Bitte sieh das so, wie es gemeint ist - und denk dran - irgendeiner muß malmeine/ Bastlas/Bibers unsere Rente erwirtschaften
Es bringt doch keinem was, wenn man "irgendwas" vorgekaut bekommt - sich nicht damit auseinander setzt (wie z.B das mit den 3 Ordnern) und solche Konstrukte dann in sein Live/produktivsystem einsetzt und keinen Blassen Dunst hat, warum weshalb wieso.
Und eine Zeile sei mir noch gestattet - in er letzten Zeit gab es sehr viele aktualisierungen im Administratorforum - mit dem Resultat, dass es teilweise nicht zur Verfügung stand - dieses unabhängig von meinem Avatarbild im Hinterkopf - sollte dir wirklich zeigen, dass du zur Not im Leben auf deine Beine gestellt bist.
Gruß
lass es mich in kurze Worte fassen (so ich dessen mächtig bin, was viele zu recht bezweifeln)
Eine Unterhaltung sehe ich bidirektional - Dialog statt monolog.
Wie ich es in der Schule (nicht nur die des Lebens, sondern auch die mit den Zeugnisen) gelernt habe - bringt man jemandem nachhaltig etwas bei, wenn man Ihm Aufgaben stellt, die er lösen muß.
Deine Aufgabe an uns - die ich aufgenommen habe - einen vom User HelgeSchneider angefangenen Denkansatz für dein Problem zu erweiterten.
Jeder, der hier mitgeholfen hat, tippte Wörter wie:
dann musst du genauer werden in deiner Beschreibung:
Von daher.....etwas mehr Info/Probieren deinerseits wäre vielleicht auch ne Möglichkeit gewesen zum Ziel zu kommen....
Nur als Anmerkung (da ich ohne ausreichenden Input auch nur im Schneegestöber )
Von daher.....etwas mehr Info/Probieren deinerseits wäre vielleicht auch ne Möglichkeit gewesen zum Ziel zu kommen....
Nur als Anmerkung (da ich ohne ausreichenden Input auch nur im Schneegestöber )
Wenn der nächst etwas ähnliches sucht wäre hier dann alles komplett.
Das ist wirklich die kleinste und somit deine Aufgabe Bitte sieh das so, wie es gemeint ist - und denk dran - irgendeiner muß mal
Es bringt doch keinem was, wenn man "irgendwas" vorgekaut bekommt - sich nicht damit auseinander setzt (wie z.B das mit den 3 Ordnern) und solche Konstrukte dann in sein Live/produktivsystem einsetzt und keinen Blassen Dunst hat, warum weshalb wieso.
Und eine Zeile sei mir noch gestattet - in er letzten Zeit gab es sehr viele aktualisierungen im Administratorforum - mit dem Resultat, dass es teilweise nicht zur Verfügung stand - dieses unabhängig von meinem Avatarbild im Hinterkopf - sollte dir wirklich zeigen, dass du zur Not im Leben auf deine Beine gestellt bist.
Gruß