
我正在嘗試設定一個快捷方式,這樣我就不必經常輸入很長的目錄名稱。在 中~/.bash_profile
,我正在做類似的事情:
export CDPATH=".:~:/This/Is/A/Really/Long/Path/That/Ends/With/My Name"
嘗試設定此變數時,如何轉義/保留目錄名稱中的空格?
我嘗試了各種解決方案(使用單引號與雙引號、用反斜線轉義(我什至嘗試過'My\\\ Name'
)、完全不使用引號以及這些選項的組合)。
謝謝。
答案1
export CDPATH=".:~:/This/Is/A/Really/Long/Path/That/Ends/With/My Name"
應該沒事
我試過了
cd /tmp/
mkdir "aaa bbb"
mkdir "aaa bbb/a" "aaa bbb/b"
export CDPATH="/tmp/aaa bbb"
和
cd a
工作得很好
另外,如果您想更快地更改目錄,您可以建立一個別名
alias longpath="cd '/This/Is/A/Really/Long/Path/That/Ends/With/My Name'"
但它不能解決複製到該目錄的問題
cp longpath
行不通的。
也許它無法正常工作,您應該安裝並啟用 bash-completion — 它定義了一個 _cd 函數並將其設為 cd 命令的完成程序,該完成程序會覆蓋預設完成並包含 $CDPATH。