Wie kann ich für xcopy eine /EXCLUDE-Datei mit Leerzeichen angeben?

Wie kann ich für xcopy eine /EXCLUDE-Datei mit Leerzeichen angeben?

/EXCLUDEIch habe versucht, einen Dateinamen mit Leerzeichen anzugeben xcopy, aber es stürzt immer ab. Wie kann ich einen solchen Pfad angeben, xcopyohne die /EXCLUDEDateien in das aktuelle Verzeichnis zu kopieren und ohne den alten DOS- ~1Kurznamen-Hack zu verwenden?

c:\Users\binki\Documents\repos\xcopy_exclude_spacey>dir source
 Volume in drive C is OS
 Volume Serial Number is 7C4E-86D4

 Directory of c:\Users\binki\Documents\repos\xcopy_exclude_spacey\source

2013-01-03  16:39    <DIR>          .
2013-01-03  16:39    <DIR>          ..
2013-01-03  16:39                 0 a
2013-01-03  16:39                 0 a b c
2013-01-03  16:39                 0 b
2013-01-03  16:39                 0 c
               4 File(s)              0 bytes
               2 Dir(s)  117,279,027,200 bytes free

c:\Users\binki\Documents\repos\xcopy_exclude_spacey>type "various exclude rules\a"
a

c:\Users\binki\Documents\repos\xcopy_exclude_spacey>xcopy /E /EXCLUDE:"various exclude rules\a" source dest
Can't read file: "various exclude rules\a"

0 File(s) copied

c:\Users\binki\Documents\repos\xcopy_exclude_spacey>xcopy /E "/EXCLUDE:various exclude rules\a" source dest
Invalid number of parameters

Keine der Möglichkeiten, den Dateinamen in Anführungszeichen zu setzen, die in einer anständigen Shell gut funktionieren würden, funktioniert bei mir mit xcopy. Aus irgendeinem Grund "/EXCLUDE:<filename>"verhindert die Syntax, dass die Option selbst erkannt wird. Die andere Syntax, "/EXCLUDE:"<filename>", bewirkt, dass die Meldung Can't read file: "<filename>"ausgegeben wird, die zeigt, dass die Option richtig analysiert wird: Die doppelten Anführungszeichen verhindern, dass das Argument in mehrere Teile aufgeteilt wird. Diese Meldung deutet jedoch darauf hin, dass die doppelten Anführungszeichen von xcopy nicht richtig aus dem Dateinamen entfernt werden, bevor es versucht, die Datei zu öffnen.

Daraus lässt sich schließen, dass ich diese Datei erfolgreich über die Option von xcopy referenzieren könnte, wenn die erste Komponente des von mir angegebenen Pfads /EXCLUDEmit einem beginnt "und mein /EXCLUDEDateiname mit endet . Windows verweigert mir jedoch die Verwendung des Zeichens in meinem Dateinamen."/EXCLUDE"

Also, wie verwende ich xcopy in einer modernen Welt mit ausufernden Dateinamen?

verwandte Informationen