Có ký tự đặc biệt nào không thể là một phần của đường dẫn trong Windows hoặc Unix mà tôi có thể sử dụng làm dấu phân cách không?Dấu phân tách đường dẫn cho Windows và Unix
Trả lời
Danh sách trợ giúp Wikipedia the reserved characters for different filesystems. Cả NTFS lẫn POSIX đều không chấp nhận các ký tự rỗng hoặc dấu gạch chéo (/) trong tên tập tin. Ký tự gạch chéo rõ ràng không phải là một dấu tách tốt, vì vậy có thể bạn có thể sử dụng null.
Tất nhiên, không phù hợp với tất cả các trường hợp (ví dụ: không thường hiển thị khi in), trong trường hợp này bạn có thể phải sử dụng một số loại escaping scheme.
Java, nhằm mục đích làm việc trên các nền tảng khác nhau, thậm chí không cố gắng tìm một dấu phân cách đường dẫn chung. Thay vào đó, mỗi nền tảng có ký tự riêng, có thể truy cập thông qua một API.
Về mặt kỹ thuật, Unix cho phép bất kỳ ký tự nào trong một thư mục/tên tệp, ngoại trừ /
tất nhiên, được hiểu là một phần của đường dẫn. Windows chỉ hỗ trợ các ký tự có thể in và một số ký tự đặc biệt không bao gồm \/: * ? " < > |
.
Tôi sẽ cẩn thận với các dấu phân tách tùy chỉnh vì chúng có thể bị hỏng trong tương lai, ví dụ: nếu ai đó sử dụng unicode và dấu phân tách tùy chỉnh của bạn là một phần của một ký tự khác.
điều gì về dấu phân tách cho biến môi trường PATH? ; cho cửa sổ và : cho Linux.
đường phân cách phụ thuộc nền tảng:
Đối với cửa sổ, đó là ‘\’ và để bỏ liên kết ‘/’.
Bạn đang nói về phân cách thư mục, không phân cách đường dẫn. Dấu tách đường dẫn là các ký tự (dấu chấm phẩy trên Windows, dấu hai chấm trên Unix) tách riêng các phần tử riêng lẻ của một giá trị đại diện cho nhiều đường dẫn. – Alan
- 1. Thay đổi dấu phân cách đường dẫn trong Windows PowerShell
- 2. Trình phân tách tệp của tên Đường dẫn của ZipEntry?
- 3. Tách chuỗi được trích dẫn với dấu phân tách
- 4. Tách dòng dựa trên dấu phân cách trong UNIX
- 5. Lấy dấu phân cách đường dẫn nền tảng bằng cách sử dụng Boost.Filesystem
- 6. System.IO.Path hoặc sử dụng tương đương với đường dẫn Unix
- 7. GUID dòng lệnh cho Unix và Windows?
- 8. Phân tích cú pháp và in $ PATH Sử dụng Unix
- 9. Dấu phân tách của numpy.savetxt
- 10. Python phân tách các dấu phân tách liên tiếp
- 11. Có thể sử dụng một chuỗi như một dấu phân tách trong lệnh unix cut không?
- 12. Dấu tách thập phân C#?
- 13. Tại sao dấu nháy đơn ký một dấu phân cách đường dẫn hợp lệ trong Perl
- 14. Python 2.6.1: dấu phân cách đường dẫn dự kiến ([)
- 15. Tách chuỗi đường dẫn vào ổ đĩa, đường dẫn và phần tên tệp
- 16. C# char "//" đường phân tách
- 17. python đọc một tệp được phân tách bằng dấu phân tách bằng cách sử dụng dấu phân tách
- 18. Python ZipFile đường phân cách
- 19. Đường dẫn Unix: chính thức hoạt động trong Python cho bất kỳ nền tảng nào?
- 20. Java/clojure: Dấu phân tách nhiều ký tự và giữ dấu phân cách
- 21. Regex cho số được phân tách bằng dấu phẩy
- 22. Dấu phân tách vô hình cho chuỗi trong HTML
- 23. Trích dẫn Nhập CSV của SQL 2005 Được phân tách bằng Dấu ngoặc kép và Dấu phẩy bên trong
- 24. số định dạng có 3 dấu thập phân, dấu phân tách hàng thập phân và dấu phẩy sau
- 25. Đường dẫn Windows trong python
- 26. Tách chuỗi bằng dấu phân tách cuối cùng
- 27. Đặt biến đường dẫn với dấu cách trong đường dẫn trong tệp .cmd của Windows hoặc tệp lô
- 28. Thực tiễn tốt nhất cho các dấu phân cách trong đường dẫn URL HTTP
- 29. C++ Cách lấy tên tệp (và đường dẫn) của mô-đun thực hiện .so trong Unix
- 30. Cách thích hợp để đặt PHP bao gồm đường dẫn cho * Nix và Windows
Vì vậy, đối với Unix, không có cách nào để nối nhiều đường dẫn trong một chuỗi? – user269354
@ user269354 - Có thể bạn có thể sử dụng bộ phân tách tại nhà như:/home/user/tiutalk/_____ SEPARATOOOOORRR _____/var/www/_____ SEPARATOOOOORRR _____/bin/dump/ –
hoặc chuỗi như "# p # p ... # p # p ", trong đó # là số ký tự trong đường dẫn và p là đường dẫn – user269354