Ok also mich hat etwas irritiert, dass /B hinter dem Dateinamen steht, weil das im speziellen etwas anderes macht, als wuerde man es vor die Quelle schreiben.
Dazu aus der Hilfe von Win2K (ist nicht relevant, weil das auch fuer fruehere DOS Versionen gilt):
Gibt an, dass eine Binärdatei kopiert wird. Wenn der Schalter /b in der Befehlszeile vor der Liste der Dateinamen steht, gilt sie für alle Dateien, deren Namen hinter dem Schalter /b stehen, bis copy auf den Schalter /a trifft. In diesem Fall gilt der Schalter /a für die Datei, deren Name direkt vor dem Schalter /a steht.
Wenn er nach dem Dateinamen steht:
Wenn der Schalter /b hinter einem Dateinamen steht, gilt sie für die Datei, deren Name unmittelbar vor dem Schalter /b steht, sowie für alle Dateien, die auf den Schalter /b folgen, bis copy auf den Schalter /b trifft. In diesem Fall gilt der Schalter /a für die Datei, deren Name direkt vor dem Schalter /a steht.
Anm: Ich glaube da ist ein Tippfehler in der Hilfe und es muss heissen: ...,bis copy auf den Schlater /a trifft...
Zu obigen Konstrukt gilt weiterhin:
Die Kommas zeigen an, dass der Parameter Ziel nicht angegeben wird
Das heisst also dass
Quelle1 + nun muesste Quelle2 folgen und Ziel ohne Plus und da wird der Ersatz
,, eingefuegt.
Stellt sich noch die Frage:
copy test.txt+
scheint das gleiche zu tun wie copy test.txt+,,
copy test.txt+,, test1.txt
kopiert test.txt nach test1.txt. Das heisst aber die ,, sind Platzhalter fuer Quelle2 und nicht fuer Ziel ?
copy test.txt ,, ist identisch mit
copy test.txt
Die Datei kann nicht in sich selbst kopiert werden.
0 Datei(en) kopiert.
Wenn man nun eine 0 Byte Datei tnull.txt hat und
copy test.txt+tnull.txt test.txt
macht, wirkt es auch wie
copy test.txt+
bzw.
copy test.txt+,,
(das /B denke man sich immer)
Also, wofuer steht nun das ,, ?!?