Sự khác biệt giữa dấu gạch chéo về phía trước và dấu gạch chéo ngược trong đường dẫn là gì? [bản sao]


9

Có thể trùng lặp:
Tại sao Windows sử dụng dấu gạch chéo ngược cho đường dẫn và dấu gạch chéo chuyển tiếp Unix?

Sự khác biệt chính giữa dấu gạch chéo (/) và dấu gạch chéo ngược (\) trong tham chiếu đến các đường dẫn, cả từ xa và cục bộ là gì?

Nếu tôi nhớ lại một cách chính xác, dấu gạch chéo ngược được sử dụng để biểu thị một cái gì đó trong máy tính hoặc mạng hiện tại, chẳng hạn như C: \ Windows hoặc \\ 172.12.1.34, trong khi dấu gạch chéo được sử dụng để biểu thị một cái gì đó bên ngoài hoặc bên ngoài với máy tính hoặc mạng hiện tại như http://www.google.com/ .

Tôi muốn biết nếu đây là một lời giải thích chính xác hoặc nếu sự khác biệt thực sự sâu sắc hơn điều này, và các ví dụ tôi đưa ra chỉ là trùng hợp ngẫu nhiên.


3
cửa sổ '\' phần còn lại của thế giới '/'
mic84

1
Bạn thực sự nên đọc câu trả lời đã có ở đây, mic84. Họ đã chỉ ra rằng điều đó không đúng.
JdeBP

Tôi đã bỏ nó vào và cố gắng xóa xin lỗi, tôi đã ngồi ở đây với trang này mở ra vì nghĩ rằng nó đã bị hủy
mic84

Câu trả lời:


11

Unix và các biến thể của nó luôn sử dụng dấu gạch chéo (/) để biểu thị hệ thống phân cấp tệp.

Tuy nhiên, Windows nợ bộ phân cách hệ thống tập tin của nó, dấu gạch chéo ngược (\), cho người tiền nhiệm MS-DOS. Và MS-DOS không phải là người khởi tạo nó. Nó được mang đến từ hệ điều hành QĐOS (vốn vay từ CP / M), mà MS đã mua và làm lại vào MS-DOS.

Vì hầu hết, nếu không phải tất cả, các giao thức dựa trên web có nguồn gốc từ UNIX (HTTP, FTP, v.v.), Microsoft tuân thủ các dấu phân cách đó để giữ tính tương thích.


1
MS đã không mua CP / M. MS đã mua QĐOS (Quick and Dirty DOS), một bản sao đơn giản của CP / M, và đã làm lại nó thành MS-DOS.
Keith

@keith - bạn đúng rồi. Đã sửa câu trả lời của tôi.
Keltari

4

Đó không phải là một lời giải thích chính xác. Dấu phân cách đường dẫn chỉ là một ký tự, mã thông báo, có phần tùy ý nhưng thường được chọn để đánh dấu một phân tách tự nhiên. Dấu gạch chéo ngược như dấu tách đường dẫn xuất phát từ dòng CP / M, DOS và Windows. Dấu gạch chéo đến từ Unix và có thể các hệ thống khác trước nó.

Dấu tách đường dẫn URL Internet được chọn là dấu gạch chéo vì hầu hết các nhà phát triển các tiêu chuẩn quen thuộc với Unix. Dấu gạch chéo Unix làm dấu tách đường dẫn thường được coi là dấu tách chính tắc. Vị trí của nó trên bàn phím cũng giúp dễ dàng gõ hơn cho hầu hết mọi người phải nhập nó nhiều.

Ngay cả các ngôn ngữ kịch bản đa nền tảng, chẳng hạn như Python, sử dụng dấu gạch chéo là "dạng chuẩn hóa" của các đường dẫn chỉ định.


1
Cũng lưu ý DCL trong VMS. Vòng loại được đi trước bởi các dấu gạch chéo về phía trước , giống như trong Microsoft command.
JdeBP

2

Ở cấp độ triển khai, các cửa sổ sẽ xử lý '/' giống như '\'. Tôi sẽ chỉ sử dụng '/'. Nó sẽ làm cho tất cả các ứng dụng của bạn di động. MySQL và python cũng dịch '/' thành những gì bạn cần trên hệ thống của mình, tùy thuộc vào một trình phân tách đường dẫn họ sử dụng.

'\' Được sử dụng trong các lĩnh vực khác như biểu thức thông thường và một số thiết bị đầu cuối và ngôn ngữ lập trình như một char thoát. Điều đó sẽ đảm bảo char tiếp theo sau nó sẽ được hiểu là một ký tự theo nghĩa đen, chẳng hạn như \ n \ r ở cuối dòng.

Theo như ký hiệu liên quan đến các hệ thống bên trong hoặc bên ngoài không thực sự đúng. '/' Đã sớm phổ biến hơn với các hệ thống * nix. Microsoft sau đó trở nên phổ biến và bây giờ '\' là những gì mọi người mong đợi. Nhưng như tôi đã đề cập, Microsoft phải tuân thủ (đặt ra một tiêu chuẩn về cách hệ điều hành nên hoạt động) tuân thủ, điều đó có nghĩa là bạn có thể thay thế tất cả '\' bằng '/' ở hầu hết mọi nơi và mọi thứ sẽ hoạt động với các vấn đề.


0

Chủ yếu nó chỉ là quy ước.

Windows dường như ủng hộ '\' trong khi Linux và Unix dường như ủng hộ '/'

Bạn có thể đọc chi tiết về các đường dẫn và các ký hiệu khác nhau được sử dụng trên các hệ thống khác nhau trên Wikipedia .

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.