copy /b *.data foo
通常,当我在 Windows cmd 中执行时,*.data
文件会按排序顺序连接到目标文件中foo
。这符合我想要的行为。
但是,我刚刚遇到了一个奇怪的目录,这个copy /b
命令会将文件无序地复制到该目录中。该顺序并不是完全随机的,而是按排序顺序倒数第二个文件将首先复制,然后是按排序顺序复制其余文件。
有没有办法克服这种奇怪的排序行为?更一般地说,如果我想以相反的顺序复制文件怎么办?
答案1
这将连接文件(甚至带有空格的) 以相反的顺序:
C:\> for /f "tokens=*" %i in ('dir /a-d /o-n /b c:\some_dir\*') do @type %i >> c:\another_dir\dest.dat
如果文件很少,可以明确列出它们:
C:\> copy /b c.dat+a.dat+b.dat dest.dat
类似这样的方法在某些情况下可能会有效:
C:\> copy /b file*.dat+foo.dat+bar*.dat dest.dat