Windows 和 Unix 中雙點和符號連結的不同行為

Windows 和 Unix 中雙點和符號連結的不同行為

在unix下,symlink/..指的是目標的父目錄。在 Windows 中試驗符號連結和連接時,我可以看到 指symlink/..的是符號連結本身的父目錄,而不是其目標的父目錄。

所以:

A
|--Link_To_C           [ symlink to B/C ]
|--B
   |--C

在 Unix 中:A/Link_To_C/..解析為A/B.
在 Windows 中:A/Link_To_C/..解析為A

第一個問題:總是這樣嗎?

如果是這樣,我可以使用例如以下命令規範 Windows 中的任何(本機)路徑嗎?os.path.normpath在Python中,沒有符號連結問題?文件說:

透過折疊冗餘分隔符​​號和上層引用來標準化路徑名,以便 A//B、A/B/、A/./B 和 A/foo/../B 全部變為 A/B。此字串操作可能會更改包含符號連結的路徑的含義

(值得一讀https://stackoverflow.com/questions/34865153/os-path-normpath-and-symbolic-links

說這不適用於 Windows 是否正確?

相關內容