Почему я не могу назвать папку или файл "CON" в Windows?

во всех версиях Windows, мы не можем изменить имя файла или имя папки как CON без стороннего программного обеспечения для переименования файлов. Попытка сделать это в Windows 7 приводит к ошибке:

недопустимое имя указанного устройства.

попытка сохранить файл как con.txt в блокноте приводит к подобной ошибке:

это имя файла зарезервировано для использования Windows.


Выберите другое имя и попробуйте снова.

почему мы не можем назвать файл или папку CON в Windows?

3
задан Steven M. Vascellaro
30.11.2022 3:07 Количество просмотров материала 2876
Распечатать страницу

9 ответов

" con " - это имя системного устройства ввода-вывода, консоли.

  • con
  • err
  • nul

и еще пара других, я думаю.

в старые времена в DOS было принято создавать файл (и я до сих пор делаю это время от времени) с помощью:

C:\>copy con foo.txt
I'm typing some text here.
^Z
    1 file(s) copied.
C:\>
32
отвечен JMD 2022-12-01 10:55

CON - зарезервированное имя в Windows. Как и PRN,AUX,NUL,LPT1 и другие.

12
отвечен Pablo Santa Cruz 2022-12-01 13:12

Я дал этот ответ дубликату и подумал, что отправлю его сюда для вашей справки:

как было заявлено ранее. это зарезервированное слово из MS-DOS для консольного устройства (насколько я помню). но, вы можете заставить windows / dos создать для вас папку. для устройств используется формат \.\[RESERVED_WORD] для доступа к "файлу" (эти устройства использовали файлы для связи). заставить windows создать вашу папку, вместо того чтобы делать mkdir [RESERVED_WORD] выполните следование:

mkdir \.\[absolute path to folder of choice, including drive letter]\[RESERVED_WORD]

например, чтобы создать папку CON на моем рабочем столе,

mkdir \.\C:\Users\me\Desktop\CON

удалить папку, вы должны ссылаться на него таким же образом, иначе он не будет работать.

rmdir \.\C:\Users\me\Desktop\CON

мой совет - просто использовать другое имя. было бы очень трудно всегда ссылаться на него по абсолютному пути, особенно если вы разрабатываете приложение, которое планируете развернуть.

11
отвечен maranas 2022-12-01 15:29

Это потому, что он используется для обозначения "внутреннего устройства". Однако эту папку можно создать с помощью следующей команды в командной строке:

C:\>md \.\e:\con

эта папка не может быть удалена с помощью правой кнопки мыши, удалить. Вы должны использовать следующую команду (в командной строке):

C:\>rd \.\e:\con

источник:http://yhisham.blogspot.in/2012/09/mystery-about-con-folder-in-windows.html

4
отвечен user1662177 2022-12-01 17:46

кроме ответ Пабло Санта-Крус, вот полный список ключевых слов, используемых Windows внутренне и защищены. все следующие регистрозависимы

  • CON
  • PRN
  • AUX
  • СОМ1, СОМ2, СОМ3, ПОРТ COM4, COM5, СОМ6, РЕЗОЛЮЦИЮ COM7, COM8, COM9, ТО COM0
  • ПОРТ LPT1, LPT2 В, ПОДКЛЮЧЕН К ПОРТУ LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9, LPT0

можно использовать _con вместо

3
отвечен RafaSashi 2022-12-01 20:03

вы можете переименовать его без использования специального программного обеспечения, только в командной строке:

например:

C:\>echo Test > \?\C:\con
C:\>type \?\C:\con
Test
C:\>rename \?\C:\con test.txt
C:\>type test.txt
Test

после \?\ должен быть указан полный путь.

2
отвечен Regent 2022-12-01 22:20

просто как есть символы, которые не могут быть использованы в именем, есть также несколько слов (все имена), которые не могут быть использованы, потому что они зарезервированы.

0
отвечен Synetech 2022-12-02 00:37

copy con - архаичный (MS-DOS) способ создания текстового файла. Например:

copy con output.txt

таким образом, это зарезервированное слово и не может использоваться в качестве имени папки в Windows.

0
отвечен Mehper C. Palavuzlar 2022-12-02 02:54

как уже упоминалось, вы можете создавать и управлять файлами и папками с зарезервированными именами в командной строке с помощью пространства имен device или filename, такого как \.\C:\NUL, но посмотрите, что происходит, когда вы пытаетесь получить доступ к такому файлу или папке через Проводник Windows:

Error opening folder named NULError deleting folder named NUL

любой доступ к объекту с зарезервированным именем устройства рассматривается как обращение к устройству, указанному этим именем, если вы не используете вышеупомянутое пространство имен обход. Эти ошибки возникают, потому что Windows пытается работать с ними, как если бы они были обычными папками, но вы не можете открыть устройство с именем NUL,CON, или иначе как папка-отсюда Incorrect function ошибка (которая похожа на Inappropriate ioctl for device ошибка в Linux).

0
отвечен bwDraco 2022-12-02 05:11

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх