Shell Script 變量中的路徑解析
編寫 Shell Script 時,如果變量的值是一個路徑的話,我們可以輕易擷取當中的路徑 (dirname) 或檔名 (basename).
| 變量 | 結果 | 說明 |
| ${path} | /usr/local/bin/emacs | 原本值 |
| ${path#/*/} | local/bin/emacs | 去除第一個資料夾 |
| ${path##/*/} | emacs | 只取檔名 (basname) |
| ${path%/*} | /usr/local/bin | 只取路徑 (dirname) |
| ${path:15} | emacs | 取第 15 個字元後的所有字元 |
| ${path:10:4} | /bin | 取第 10 個字元後的 4 個字元 |
最後兩個用法與 Java 的 subString 相同。