Вы используете подстановочный знак, поэтому соответствующие файлы перемещаются. В документации Microsoft (ссылки внизу) указано
DOS_QM (> больше чем) Соответствует любому отдельному символу или, встречая точку или конец строки имени, продвигает выражение до конца набора смежных DOS_QM.
DOS_STAR (<меньше чем) Сопоставляет ноль или более символов, пока не встретится и не совпадет с финалом. во имя.
Итак, ваша команда "перемещает" (так как целевая папка совпадает с исходной, в которой нет реальной операции перемещения) файлы без расширения, то есть ваша команда эквивалентна move *.
Теперь следующий вопрос должен быть:
- Если
^<
(или просто "<"
) выбирает файлы без расширения, то почему выбирается файл .a
без имени, только с расширением?
И ответ - короткие имена. Подстановочные знаки работают с длинными и короткими именами файлов. Если вы попытаетесь с помощью dir /x
перечислить короткие имена файлов, вы, вероятно, увидите, что короткое имя для файла .a
не имеет расширения.
Дополнительная информация