Windows 7 не может переименовать файл в «aux.svg»: «Указанное имя устройства недопустимо»

Windows 7 не может переименовать файл в «aux.svg»: «Указанное имя устройства недопустимо»

Я использую 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снова.

Связанный контент