我不理解使用通配符时COPY命令的行为。
我在C:Source
中有一个名为mpt*.asm
的文本文件,我想将其复制到C:Dest
。这是从批处理脚本中需要的,我不能确定mpt*.asm
的确切名称(例如,它可能是mpt001.asm
)。目标名称应该完全是mpt.asm.
如果我使用:
COPY C:Sourcempt*.asm C:Destmpt.asm
文件文件被复制,但在文件末尾附加了一个额外的(0x1A
)字符。
如果我使用:
COPY C:Sourcempt*.asm C:Destmpt.asm /B
我不明白这个虚伪的角色。
如果我不使用通配符,我也不会得到伪造的字符。COPY
中似乎不太可能存在错误,但这种行为似乎出乎意料。
有没有一种方法可以在不使用/B
的情况下完成此复制?
我以前从未见过,但它也为我添加了一个额外的箭头字符。
您可以使用xcopy
来解决此问题。
echo f| xcopy C:Sourcempt*.asm C:Destmpt.asm
如果你读copy /?
,它会显示
要附加文件,请指定一个文件作为目标,但要指定多个文件用于源(使用通配符或file1+file2+file3格式)。
因此,通过使用单个文件名作为dest,并在源中使用通配符,它可能会将其解释为附加,这可能是额外字符的作用,但由于您没有附加任何内容,因此您可以看到它。
我只是猜测,但这可以解释它。