Bên dưới cửa sổ, trang chủ của người dùng là %HOMEPATH%
tương đương với linux và Mac ~
. Bên dưới này, có một thư mục Desktop
giống như trên máy Mac. Python tự động chuyển đổi ~
thành% HOMEPATH% trên cửa sổ, vì vậy lệnh Mac của bạn sẽ hoạt động trên hộp trên Mac và Windows.
Trên Linux, điều này phức tạp hơn một chút. Trước tiên, hãy hiểu rằng hộp Linux bạn đang chạy có thể không có một máy tính để bàn, do đó không có thư mục dành cho máy tính để bàn của người dùng. Nếu bạn có trình quản lý cửa sổ, nó có thể hoặc không thể theo mô hình ~\Desktop
. The wikipedia entry on window managers đi sâu vào chi tiết hơn, bao gồm so sánh giữa một số trình quản lý cửa sổ X phổ biến hơn trong một số liên kết phụ.
Đặt cược tốt nhất của bạn sẽ là lùi lại và tự hỏi mình tại sao tôi muốn/cần thư mục người dùng trên máy tính để bàn? Có phải tạo lối tắt trong khi cài đặt không? Bạn có thể tốt hơn với tiện ích trình biên tập cài đặt, chẳng hạn như nsis, xử lý các chi tiết đó. Nếu đó là để lưu trữ tệp, ngay cả tạm thời, bạn có thể muốn suy nghĩ lại về thiết kế của mình. Hoặc bạn đang tìm kiếm điều gì đó, trong trường hợp đó, tìm kiếm hệ thống tệp có thể là cách để đi, thay vì kiểm tra thư mục đơn lẻ dễ vỡ.
Giống như hầu hết mọi thứ, tất cả phụ thuộc vào những gì bạn muốn thực hiện.
Như EOL đã lưu ý trong nhận xét của mình, Windows hơi phức tạp hơn lần đầu tiên xuất hiện. His link to a more complete article on the Windows Desktop thư mục có thêm chi tiết về nội địa hóa cho thư mục trên máy tính để bàn. Điều này rất quan trọng đối với các nhà xây dựng các ứng dụng quốc tế cần tính đến, hoặc sử dụng bản địa hóa tự động được tích hợp vào bộ công cụ của họ hoặc tránh những thứ sử dụng nó.
Nguồn
2011-09-13 15:16:27
Chúng là các hệ điều hành khác nhau. Câu trả lời tầm thường hầu như là "Không", không có tiêu chuẩn nào áp dụng cho cả hai họ hệ điều hành. Windows không chuẩn.Bạn có lẽ yêu cầu một cách để giảm thiểu sự khác biệt? Vui lòng đăng mã bạn đang sử dụng để chúng tôi có thể - đơn giản hóa nó. –
cho chúng tôi [tiếp tục cuộc thảo luận này trong trò chuyện] (http://chat.stackoverflow.com/rooms/3413/discussion-between-eol-and-s-lott) – EOL