Windows 10에서는 여전히 1974 년에 예약 된 이러한 파일 이름을 사용할 수 없습니다

0
326

Windows는 특정 파일 이름을“예약”하여 어디서나 사용할 수 없습니다. “con.txt”또는 “aux.mp3″파일을 호출하지 마십시오. 이 모든 것은 1974 년에 이루어진 선택과 영원한 하위 호환성에 대한 Microsoft의 갈망 때문입니다.

사용할 수없는 파일 이름

Microsoft는 예약 된 파일 이름의 공식 목록을 제공하며 다음과 같습니다.

CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, ​​COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 및 LPT9

이러한 파일 이름은 파일 확장자와 함께 사용할 수 없습니다. 따라서 파일 이름을 “con.txt”, “con.jpg”또는 “con.doc”으로 지정할 수 없습니다. 또한 Windows는 대소 문자를 구분하지 않으므로 CON, CON 또는 CoN인지 상관 없습니다. Windows에서는 해당 이름을 사용할 수 없습니다.

직접해볼 수 있습니다. 메모장에서 파일을 “con.txt”또는 “lpt6.txt”로 저장하십시오. 또는 파일 탐색기에서 파일 이름을 이러한 이름 중 하나로 바꿉니다. Windows는 그렇게 할 수 없습니다.

물론 Windows는 다른 방법으로 파일 이름을 제한합니다. 다음과 같은 다양한 특수 문자는 이름으로 사용할 수 없습니다. 자세한 내용은 Microsoft 공식 문서를 참조하십시오.

1974 년에 무슨 일이 있었으며, 왜 우리가 관심을 가져야합니까?

같이 @Foone 최근 트위터에 설명 된이 이슈는 1974 년으로 거슬러 올라갑니다. (현재 Linux와 같은 UNIX 유사 운영 체제에서도 마찬가지입니다.) 하드웨어 장치는 첫 번째 프린터의 경우 / dev / lp0 및 콘솔의 경우 / dev / tty와 같은 특수 경로에 표시되었습니다.

1974 년에도 이와 동일한 개념이 CP / M 운영 체제에 추가되었습니다. 불행히도 CP / M은 메모리가 거의없고 하드 드라이브가없는 컴퓨터를 위해 설계되었습니다. 여러 디스크를 사용하고 디렉토리를 사용하지 않았으므로 장치를 나타내는 특수 파일은 모든 디스크의 모든 곳에 효과적으로 나타납니다.

따라서 텍스트 파일을 저장할 때 텍스트 편집기에 파일을 프린터 장치에 “저장”하도록 지시하면 인쇄 할 수 있습니다. 그러나 텍스트 편집기 및 “.txt”와 같은 파일 확장자 추가와 같은 다른 프로그램은 CP / M이 이러한 장치 파일의 파일 확장자를 무시했습니다. 다시 말해, 텍스트 편집기가 파일을 프린터 장치 이름에 “.txt”로 저장하려고하면 CP / M은 파일이 프린터 장치를 참조한다고 가정하고 파일 확장자를 무시했습니다. 이제이 기능은 모든 응용 프로그램에서 제대로 작동했습니다.

물론, 더러운 해킹이지만 누가 신경 쓰나요? CP / M이 붙잡 혔습니다. 결국 PC-DOS가 등장하여 유용한 CP / M 기능을 유지했습니다. PC-DOS 2.0은 1983 년에 디렉토리를 추가했지만 Microsoft는 이러한 장치 파일을 특수한 장치 폴더에 저장하지 않고 기존 DOS 소프트웨어와의 호환성을 위해 모든 디렉토리에 표시하도록 선택했습니다.

결국 Windows 95가 등장했으며 DOS 위에 구축되었습니다. Windows NT는 DOS를 기반으로하지 않았지만 Windows 95 응용 프로그램과 호환됩니다. Windows 10은 여전히 ​​Windows NT를 기반으로하며 동일한 방식으로 작동합니다. 물론 Windows 7에서도 마찬가지입니다.

40 년이 지난 지금도 Windows에서는이 기능을 사용하는 고대 프로그램과의 호환성을 유지하려고하므로 파일 이름을 “con.txt”또는 “aux.mp3″으로 지정할 수 없습니다. Microsoft가 이전 버전과의 호환성을 위해 얼마나 열심히 노력하고 있는지 보여주는 좋은 예입니다.