Tôi gặp khó khăn khi tìm thông tin này, và bản dùng thử và lỗi đang nói với tôi rằng có thể không có bất kỳ thông tin nào. Các ký tự không hợp lệ cho tên tệp trên OS X Lion (10.7) là gì?
Tôi gặp khó khăn khi tìm thông tin này, và bản dùng thử và lỗi đang nói với tôi rằng có thể không có bất kỳ thông tin nào. Các ký tự không hợp lệ cho tên tệp trên OS X Lion (10.7) là gì?
Câu trả lời:
HFS Plus cho phép " Unicode , bất kỳ ký tự nào, kể cả API hệ điều hành NUL. Có thể giới hạn một số ký tự vì lý do cũ"
'/'
hoặc NUL '\0'
trong chúng .
Các ký tự không hợp lệ cho tên tệp trong OS X là gì?
Các ký tự được phép trong tên tệp Unicode, bất kỳ ký tự nào, kể cả NUL. API hệ điều hành có thể giới hạn một số ký tự vì lý do cũ
Finder hiện không cho phép nhập dấu hai chấm vào tên tệp, nhưng nó cho phép nhập dấu gạch chéo ngược. Tuy nhiên, các ký tự được hiển thị dưới dạng dấu gạch chéo trong Finder được hiển thị dưới dạng dấu hai chấm trong shell và ngược lại. Finder không cho phép bất kỳ ký tự điều khiển ASCII nào.
Bash dường như cho phép tất cả các nhân vật điều khiển ngoại trừ \000
(NUL). Tôi đã kiểm tra nó bằng cách chạy đầu ra từ:
for i in {1..31} 127 0; do echo touch \\$(bc <<< "obase=8;$i"); done
EDITED
Theo Wikipedia , ký tự không hợp lệ duy nhất là dấu gạch chéo /
, nhưng ở lớp UNIX.
:
bị cấm trên Mac OS Classic, nhưng chắc chắn không phải trên Mac OS X. touch foo:bar
hoạt động hoàn toàn tốt.
:
hợp lệ trong lớp Unix của lớp, nhưng nó được dịch sang / từ /
trong các lớp Mac của Mac (ví dụ như Finder, hầu hết các hộp thoại liên quan đến tệp, v.v.): dấu hai chấm được sử dụng làm dấu phân cách trong đường dẫn HFS Phần cứng và dấu gạch chéo được sử dụng làm dấu phân cách trong đường dẫn POSIXIX do đó có một bản dịch hai chiều tùy thuộc vào lớp mà bạn đang làm việc với lớp nào.
/
) hoặc dấu hai chấm ( :
) để an toàn?
foo/bar.docx
(hoạt động), Microsoft Word sẽ không thể mở nó.