Por que não podemos fazer a pasta CON, PRN, Null nas janelas? [duplicado]

10

Quando eu faço uma nova pasta e a renomeio para nul ela diz The Specified device name is invalid.

então eu pesquisei quais são as outras pastas que não podemos criar e recebo nomes con , nul , prn ?

como são esses nomes? e por que não podemos criar pastas com esses nomes?

    
por shyammakwana.me 28.06.2013 / 20:51

1 resposta

30

Tudo começa com o antigo comando PIP CP / M - este comando, usado para copiar arquivos, permite que você especifique nomes de dispositivos especiais em vez de arquivos.

Gary Kildall, who developed CP/M, based much of the design of its file structure and command processor on operating systems from Digital Equipment, such as RSTS/E for the PDP-11. Besides accessing files on a floppy disk, the PIP command in CP/M could also transfer data to and from the following "special files":

CON: — console (input and output)
AUX: — an auxiliary device. In CP/M 1 and 2, PIP used PUN: (paper tape punch) and RDR: (paper tape reader) instead of AUX:
LST: — list output device, usually the printer
PRN: — as LST:, but lines were numbered, tabs expanded and form feeds added every 60 lines
NUL: — null device, akin to /dev/null
EOF: — input device that produced end-of-file characters, ASCII 0x1A
INP: — custom input device, by default the same as EOF:
OUT: — custom output device, by default the same as NUL:

These were not true device files, however, because their handling was limited to PIP.

Em seguida, o DOS chega no início dos anos 80, um clone do 8086 CP / M destinado a funcionar no então novo IBM PC. O DOS estendeu esse conceito um pouco mais - os arquivos acima eram "especiais" e podiam ser especificados onde quer que um arquivo fosse esperado nos comandos do DOS. Portanto, o comando DOS copy interno pode ser usado para imprimir um documento executando copy myfile.txt prn: . (Versões posteriores do CP / M podem ter feito isso, mas duvido.)

Flash forward para Windows 95. Sendo ele próprio construído sobre o DOS, o código que lida com esses nomes de arquivos permaneceu, mas evidentemente não foram integrados muito bem na parte GUI do Windows 95. Ele causou alguns problemas como o bug CON \ CON - e isso era conhecido por causar problemas com o IE também.

Provavelmente por causa da paranóia de outros bugs ocultos (mesmo que nenhum exista em versões baseadas no NT do Windows), a Microsoft decidiu fazer com que o Explorer sempre rejeitasse qualquer tentativa de criar um arquivo com esse nome. É engraçado que mesmo no sistema Windows 8 que estou usando agora, ainda não consigo criar uma pasta chamada "con". (O Windows 10 ainda não permite que você faça isso).

    
por 28.06.2013 / 21:54