Tại sao chúng ta không thể tạo thư mục CON, PRN, Null trong windows? [bản sao]


10

Khi tôi làm thư mục mới và đổi tên nó để nulnó nóiThe Specified device name is invalid.

sau đó tôi đã tìm kiếm đó là những thư mục khác mà chúng tôi không thể thực hiện, và có được tên con, nul, prn?

Những cái tên này là viết tắt của cái gì? và tại sao chúng ta không thể tạo các thư mục với những tên này?

Câu trả lời:


32

Tất cả bắt đầu với lệnh CP / M PIP - lệnh này, được sử dụng để sao chép tệp, cho phép bạn chỉ định tên thiết bị đặc biệt thay vì tệp.

Gary Kildall, người đã phát triển CP / M, dựa trên phần lớn thiết kế cấu trúc tệp và bộ xử lý lệnh của nó trên các hệ điều hành từ Thiết bị kỹ thuật số, như RSTS / E cho PDP-11. Bên cạnh việc truy cập các tệp trên đĩa mềm, lệnh PIP trong CP / M cũng có thể truyền dữ liệu đến và từ các "tệp đặc biệt" sau:

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:

Tuy nhiên, đây không phải là các tệp thiết bị thực sự, vì việc xử lý của chúng bị giới hạn ở PIP.

Sau đó, DOS xuất hiện vào đầu những năm 80, một bản sao 8086 CP / M có nghĩa là hoạt động trên PC IBM mới. DOS mở rộng khái niệm này thêm một chút - ở trên là "các tệp đặc biệt" và có thể được chỉ định ở bất cứ nơi nào một tệp được mong đợi trong các lệnh DOS. Vì vậy, copylệnh DOS tích hợp có thể được sử dụng để in tài liệu bằng cách thực thi copy myfile.txt prn:. (Các phiên bản sau của CP / M có thể đã có thể làm điều này nhưng tôi nghi ngờ về điều đó.)

Chuyển sang Windows 95. Bản thân nó được xây dựng trên nền tảng DOS, mã xử lý các tên tệp đặc biệt này vẫn còn, nhưng rõ ràng là không được tích hợp quá tốt trong phần GUI của Windows 95. Nó gây ra một số vấn đề như lỗi CON \ CON - và điều này cũng được biết là gây ra vấn đề với IE.

Có khả năng do hoang tưởng về các lỗi ẩn sâu hơn (mặc dù không tồn tại trong các phiên bản Windows dựa trên NT) Microsoft quyết định đặt nó ở nơi Explorer luôn từ chối mọi nỗ lực tạo tệp có tên đó. Thật buồn cười là ngay cả trong hệ thống Windows 8 tôi đang sử dụng, tôi vẫn không thể tạo một thư mục có tên "con." (Windows 10 vẫn không cho phép bạn làm điều này).


Bạn có phiền khi đăng bài này lên Tại sao tôi không thể đặt tên thư mục hoặc tệp 'CON' trong Windows không? Giải thích của bạn đi vào chi tiết hơn nhiều so với các câu trả lời hiện có.
Stevoisiak
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.