Có bất kỳ đường dẫn pháp lý nào trong POSIX không thể được liên kết với một tệp, thường xuyên hoặc không thường xuyên không? Đó là, mà test -e "$LEGITIMATEPOSIXPATHNAME"
không thể thành công?
Làm rõ # 1: tên đường dẫn
Theo "đường dẫn hợp pháp trong POSIX", ý tôi là những đường dẫn mà POSIX nói được cho phép, không phải những đường dẫn mà POSIX không cấm rõ ràng. Tôi đã xem xét điều này và đặc tả POSIX gọi chúng là các chuỗi ký tự:
- Chỉ sử dụng các ký tự từ bộ ký tự tên tệp di động
[a-zA-Z0-9._-]
(xem http://www.opengroup.org/onlinepub/009695399/basingefs/xbd_chap03.html#tag_03_276 ); - Đừng bắt đầu với
-
; và - Có độ dài từ 1 đến NAME_MAX, một số chưa được chỉ định cho POSIX không nhỏ hơn 14.
POSIX cũng cho phép các hệ thống tập tin có thể sẽ thoải mái hơn thế này, nhưng nó cấm các ký tự NUL và /
xuất hiện trong tên tệp. Lưu ý rằng tên tệp UNIX theo mô hình như lost+found
vậy không phải là FPF, theo def này. Có một PATH_MAX không đổi khác, người sử dụng không cần giải thích thêm.
Câu trả lời lý tưởng sẽ sử dụng các FPF, nhưng tôi quan tâm đến bất kỳ ví dụ nào với tên tệp mà POSIX không cấm hoàn toàn.
Làm rõ # 2: không thể
Rõ ràng, tên đường dẫn thông thường có thể được liên kết vào một tệp. Nhưng ngữ nghĩa UNIX sẽ cho bạn biết rằng có những nơi đặc biệt thường không thể có các tệp tùy ý được tạo, như trong /dev
thư mục. Có nơi nào đặc biệt như vậy được quy định trong POSIX không? Đó là những gì câu hỏi nhận được sau.