укажите порядок сортировки в “копии/b *.dat нечто” в Windows cmd

Обычно, когда я делаю a copy /b *.data foo в Windows cmd, *.data файлы соединяются в отсортированном порядке в целевой файл foo. Это соответствует моему желаемому поведению.

Однако я просто выполнил любопытный каталог в который это copy /b команда скопирует файлы не в порядке. Порядок не является точно случайным, но предпоследним файлом в отсортированном порядке, пойдет сначала, сопровождаемый остающимися файлами в отсортированном порядке.

Существует ли способ преодолеть это странное поведение сортировки? В более общем плане, что, если я хочу скопировать файлы, скажем, в обратном порядке?

2
задан 15.06.2015, 15:19

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
2
ответ дан 09.01.2020, 03:32

Теги

Похожие вопросы