
Я использую Windows 7 x64. Вы также можете попробовать это на своем компьютере.
Возьмите любой файл. Попробуйте переименовать его в 'aux.svg'. Windows ответит
Указанное имя устройства недействительно.
Я пробовал это на двух разных компьютерах (тоже Win7 x64), с теми же результатами.
Вы можете взять любой файл, который хотите. Вы не можете переименовать его в 'aux.svg'. Dropbox не будет загружать файл с таким именем. Браузер переименует его в '_aux.svg' при загрузке. Это, кажется, происходит в любом каталоге, который я пробовал.
Что, черт возьми, здесь происходит?
решение1
Это одно из имен файлов, которые Windows запрещаетисторические причины. Насколько мне известно, у вас нет другого выхода.
решение2
Добавить кответ александру:
Тыможет обойти синтаксический анализ имени файлаиспользуя такой путь, как:
\\?\C:\Users\Paperflyer\aux.svg
del
и rename
в командной строке принимать такие пути. Однако переименовывать файл бессмысленнок aux
, так как вы не сможете получить к нему доступ из других программ.
решение3
Еще одно дополнение два года спустя:
Вы можете переименовать (и изменить) любое зарезервированное ключевое слово с помощьюcygwin. Если это каталог, вы можете получить доступ к его содержимому с помощью других программ в Windows, но не к нему самому.
Я столкнулся с этим, когда компилировал программу в общей папке на виртуальной машине. В пакете была папка с именем aux, неперемещаемая папка, которую я ранее извлек с помощью cygwin. Поэтому единственный способ избавиться от нее — использоватьcygwinснова.