路徑表示法是檔案系統導航的基礎。Linux 與 Windows 在根結構、分隔符號、相對路徑符號上有關鍵差異,掌握對照表可避免跨平台腳本移植錯誤。
Windows 路徑
| 類型 | 格式 | 範例 | 說明 |
| 絕對路徑 | 磁碟機代號:\路徑 | C:\Users\Name\file.txt | 以磁碟機代號 (C:、D:) 開頭 |
| 相對路徑 | .\ 或 直接檔名 | .\file.txt 或 file.txt | . 代表目前目錄 |
| 上層目錄 | ..\ | ..\parent.txt | .. 代表父目錄 |
| 目前磁碟根目錄 | \路徑 | \Windows\System32 | 不指定磁碟機,指目前工作磁碟根目錄 |
Linux 路徑
| 類型 | 格式 | 範例 | 說明 |
| 絕對路徑 | /路徑 | /home/user/file.txt | 以根目錄 / 開頭 |
| 相對路徑 | ./ 或 直接檔名 | ./file.txt 或 file.txt | . 代表目前目錄 |
| 上層目錄 | ../ | ../parent.txt | .. 代表父目錄 |
| 家目錄捷徑 | ~/路徑 | ~/Documents | Shell 自動展開為目前使用者 $HOME |
關鍵差異總結
| 項目 | Windows | Linux |
| 根起始 | 磁碟機代號 (C:, D:) | 單一根目錄 / |
| 路徑分隔符 | 反斜線 \ | 正斜線 / |
| 目前目錄 | . | . |
| 父目錄 | .. | .. |
| 大小寫敏感度 | 不敏感 (大小寫保留但不區分) | **敏感** (File.txt ≠ file.txt) |
| 家目錄捷徑 | %USERPROFILE% (環境變數) | ~ (Shell 展開) |
實務建議
- 撰寫跨平台腳本 (Python, Node.js, Go, Shell) 時,**一律使用正斜線 /**,Windows API 亦接受正斜線。
- 使用語言標準庫的路徑操作 API (如 Python
os.path.join, pathlib.Path),自動處理平台差異。
- 避免硬式編碼絕對路徑,善用環境變數、設定檔、相對路徑。