Ветеран
Сообщения: 27449
Благодарности: 8087
|
Профиль
|
Отправить PM
| Цитировать
Цитата Foreigner:
Iska, А в чем может возникнуть проблема? »
|
В порядке отдачи имён функциями ОС.
На NTFS будет всегда лексикографический, поскольку они так и хранятся в MFT — в виде упорядоченного B+ дерева. На FATx порядок будет соответствовать дате создания файлов:
Код: 
H:\04>for /l %i in (5, -1, 1) do @copy nul 0%i.txt
Скопировано файлов: 1.
Скопировано файлов: 1.
Скопировано файлов: 1.
Скопировано файлов: 1.
Скопировано файлов: 1.
H:\04>for %i in (*.txt) do @echo %i
05.txt
04.txt
03.txt
02.txt
01.txt
Ровно то же будет и в WSH, и в PoSH, и в C/C++.
В частности, из-за этого пришлось специально учитывать такую возможность здесь: VBScript & CMD: разделение файла на фрагменты и их последующее слияние — Серый форум. В первом варианте я не сообразил как побороть сие простым способом, и сделал поочерёдное «подклеивание» частей. Затем тутошний коллега Diamond навёл меня на мысль, что достаточно просто предварительно скопировать части в правильном порядке во временную папку, а затем уже смело использовать «copy /b name.ext.part????.bin name.ext» в этой временной папке — ОС будет уже гарантированно отдавать файлы команде copy в нужном порядке (кстати, только сейчас заметил, что описание там в самом скрипте не исправил ).
|
Отправлено: 18:24, 07-04-2016
| #7
|