最近在備份Switch 設定檔, 把檔案存在Synology NAS 上, 用檔案總管去看檔案
會顯示成這樣 , 有幾個正常,幾個異常
但用Linux 去看則是正常的
試過隨機存一個很長的長檔名 ,用windows11 , 10 檔案總管看,也是正常的,
想請問能怎麼調整Windows 顯示方式, 讓檔名看起來正常?
========== 2023/11/16 更新===============
問題已解決,
Windows 目錄不支援: 所以在檔安總管看不到完整檔案名稱, 只能透過其它方式,
如nfs 或 synology 的file station 將檔名 : 變更為 其它支援的字元就可以正常顥示,
但這樣手工並不能完全解決這個問題,
故寫一支python 程式, 讀取目錄檔案,將:變更為- 就解決了 , 提供大家參考
自有 Windows 以來,它都遵循著 "主檔名.副檔名" 的架構,即便 Win 7 後改用萬國碼核心重新改寫,仍脫離不了魔咒,加上 Windows 檔名長度有 256 字元的限制,你檔名太長 (中文 1 字視為英文 2 字),對 Windows 來說會有風險
Linux 一開始就 follow 萬國碼核心架構,我測試過在 Linux 建一個 684 字元、中間 "." 無數,幾個月之間,檔案讀取修改正常
不要試圖挑戰 Windows 的權威,死的是你自己
我存的檔名,再怎麼長,也不會超過50個字元, 離256個字元還很遙遠, 目前正在查看是否為SMB 問題
預設的限制是含路徑不能超過 260 字元,還有路徑不能有亞東字集文字
如果有亞東文字,一個字等於兩個字元,檔名 50字元,還有210字,大概一百個雙位元字元就爆了
除了雙位元字元,還有四位元字元,例如 UTF 延伸字集內有蠻多四位元字元,如果有用到,會更短就爆
如何開啟這個限制,請看討論區,自己試試看