dir /x
Из соображений совместимости Windows генерирует имя 8.3 для каждого созданного длинного имени файла, а код сопоставления с подстановочными знаками ( FindFirstFile()
) проверяет как исходные, так и сокращенные имена. Используйте, dir /x
чтобы увидеть, какие короткие имена присваиваются каждому файлу.
Обычно короткие имена автоматически генерируемый выглядеть 090820~1.PDF
и 090820~2.PDF
так далее, но есть исключения :
[...] если по крайней мере 4 файла или папки уже существуют с одинаковыми начальными 6 символами в их коротких именах, выделенный LFN вместо этого усекается до первых 2 букв базового имени (или 1, если базовое имя имеет только 1 букву) сопровождаемый 4 шестнадцатеричными цифрами, полученными из недокументированного хэша имени файла, сопровождаемого [...]
Перемещение файла в пределах одного раздела не изменяет ни одно из его имен, а только перемещает их.
При использовании файловой системы NTFS создание имени 8.3 можно отключить в масштабе всей системы, используя:
fsutil behavior set disable8dot3
Однако это не повлияет на существующие имена.