
Windows 11 permite que los archivos tengan nombres de 200 caracteres llenos de espacios y emojis, pero el Explorador de archivos se negará a nombrar un archivo o una carpeta como CON. CON, PRN, AUX, NUL, desde COM1 hasta COM9 y desde LPT1 hasta LPT9 son nombres de dispositivos reservados. El ingeniero de MS Raymond Chen sitúa su origen en DOS 1.0, una versión que ni siquiera admitía carpetas.
Probé esta regla en un PC con Windows 11 26H2. La restricción introducida por el sistema operativo de 1981 sigue firmemente vigente, aunque Windows Latest descubrió que una parte ya no funciona como describe la documentación de MS.

CON, PRN, AUX y NUL son dispositivos, no nombres de archivo, en Windows 11
Cada nombre reservado corresponde a un dispositivo. NUL es especialmente destacable: actúa como un agujero negro que descarta todo lo que se le envía.
La documentación de MS sobre nombres de archivo todavía indica a los desarrolladores: “No utilice los siguientes nombres reservados como nombre de un archivo”. Las restricciones también se aplican a las carpetas porque Windows considera que una carpeta es un tipo especial de archivo.

Según MS, añadir una extensión no debería permitir eludir la restricción, aunque en algunos casos sí lo hace. La empresa afirma: “NUL.txt y NUL.tar.gz son equivalentes a NUL”. Ni siquiera los dígitos en superíndice están exentos. Windows interpreta ¹, ² y ³ como dígitos, lo que significa que nombres como COM¹ y LPT³ están reservados “en todos los directorios”.
Desde el punto de vista de la arquitectura, COM1 es un enlace al puerto serie dentro del kernel de Windows. MS lo denomina nombre de dispositivo de MS-DOS, por lo que introducir COM1 permite acceder al puerto en lugar de a un archivo.
Raymond Chen explica por qué una regla de DOS 1.0 sigue activa en Windows 11
La historia comienza con CP/M, el sistema operativo con el que MS-DOS buscaba mantener la compatibilidad. En CP/M, los nombres de dispositivos siempre incluían dos puntos, como CON:. MS-DOS hizo que los dos puntos fueran opcionales, una decisión que Michal Necasek, del OS/2 Museum, denomina el “error fatal”. Un nombre simple como CON no ofrece a DOS ninguna indicación de si se refiere a un archivo o a la consola.

En una publicación de 2003 en su blog Old New Thing, Chen explicó que “DOS 1.0 no admitía subdirectorios, minúsculas ni nombres de archivo de más de 8.3 caracteres”. Esta limitación también explica el peculiar motivo por el que algunos de los archivos de sistema más antiguos de Windows 11 conservan nombres de la era de DOS.
En aquella época, si un ensamblador preguntaba dónde guardar su salida y el usuario quería imprimirla, “se escribía ‘PRN’ como nombre de archivo”. Introducir NUL descartaba la salida, mientras que CON la mostraba en pantalla.
Como los discos solo tenían un directorio, no había ningún otro lugar donde pudieran funcionar estos nombres especiales. Cuando las carpetas llegaron con DOS 2.0 en 1983, los nombres de dispositivos también tuvieron que funcionar dentro de ellas. Como explicó Chen, de lo contrario los usuarios no podrían cambiar a otra carpeta, ejecutar un ensamblador e introducir NUL para descartar su salida. Por ello, MS hizo que los nombres funcionaran en todas las carpetas, razón por la que hoy todavía no se puede crear un archivo llamado PRN en la carpeta Documentos.
¿Por qué MS no ha eliminado este comportamiento después de más de 40 años? “Porque todo el mundo sigue dependiendo de ellos”, escribió Chen. Los archivos por lotes suprimen la salida redirigiéndola a >NUL, los scripts comprueban si existe una carpeta con “if exist directoryname\nul” y las guías antiguas indican a los usuarios que creen archivos mediante “copy CON”.
Si se eliminara la regla, todos los scripts que redirigen la salida a NUL empezarían a escribir archivos reales.
En el pasado, esta regla llegó a provocar el bloqueo completo de algunos PC. Windows 95 y Windows 98 rechazaban las rutas que contenían un nombre de dispositivo, pero fallaban cuando una ruta contenía dos, como C:\con\con. El boletín MS00-017 de MS, publicado en marzo de 2000, reconocía que esto “normalmente provoca un bloqueo”.
Probé la regla de la era de DOS en Windows 11 26H2 y NUL.txt logró eludirla
En un PC con Windows 11 26H2, cambiar el nombre de una carpeta nueva a CON mostró el mensaje “El nombre de dispositivo especificado no es válido”. PRN, AUX, NUL y COM1 también fueron rechazados.
Sin embargo, NUL.txt se aceptó sin mostrar ningún error, al igual que CON.txt, aunque la documentación de MS sigue afirmando que NUL.txt equivale a NUL.

Aunque la documentación de MS no se ha actualizado, los desarrolladores que examinaban la compatibilidad de Python con Windows observaron en 2022 que Windows 11 había dejado de considerar especiales los nombres de dispositivos con extensiones al procesar rutas de archivo.
Por desgracia, estos archivos pueden comportarse de manera impredecible. Un usuario de MS Q&A descubrió que PowerShell podía mostrar NUL.txt en una lista, pero no podía abrirlo ni eliminarlo. Un asesor de la comunidad respondió que “el resultado puede ser impredecible”. Esto podría explicar por qué MS continúa afirmando que las extensiones no afectan a nombres como NUL.txt y CON.txt.

El Símbolo del sistema todavía puede demostrar el antiguo comportamiento de DOS. Al ejecutar echo hello > CON, se mostró “hello” en la pantalla en lugar de crear un archivo, mientras que echo test > COM¹ falló exactamente como describe la documentación de MS.
Antes de criticar a Windows, conviene señalar que los responsables de mantenimiento de Linux cambiaron en 2024 el nombre de un archivo de controlador gráfico de aux.c a auxch.c porque el nombre original impedía a los usuarios clonar el kernel de Linux en Windows.
Sin embargo, Windows todavía puede ser objeto de críticas, porque Linux cambió su código para adaptarse a Windows, mientras que Windows sigue conservando una regla de 1981 por scripts que quizá no se hayan modificado en décadas.
Windows 11 ha relajado la restricción lo suficiente como para permitir NUL.txt, pero CON sigue tratándose como un dispositivo en lugar de como un nombre de archivo. Al igual que el administrador del montón de Windows 95 que todavía se incluye con Windows 11, es otro componente heredado que MS no puede eliminar sin correr el riesgo de inutilizar el archivo por lotes de alguien creado hace 30 años.
Windows Latest depende de lectores como usted. Conviértanos en su fuente preferida en Google Discover y Google Search, y ayude a que nuestro periodismo independiente llegue a más personas.

