2016-05-05 53 views
1

當我在shell中工作並快速寫入時,有時候我會寫「c d ..」而不是「cd ..」。有沒有什麼辦法(像bash別名)執行「CD ..」與我奇怪的拼寫? (我已經嘗試過在我的.bashrc創建別名,但隨後的bash說linux:用別名正確鍵入錯誤?

bash: alias: `c d..': invalid alias name 

,因爲它只能使用單個詞的別名,不是嗎?)

謝謝您4快速幫助:d

+3

別名不能處理的參數,使用功能。你可以創建一個名爲'c()'的函數來檢查它的第一個參數是否以'd'開頭,然後運行'cd'。 – Barmar

回答

-1

你可以添加到您的.bashrc:d

function c() { 
    if [ "$1" = d.. ] ; then 
     builtin cd .. 
    fi 
} 
+0

在OP的例子中,沒有'$ 2'; OP打算鍵入'cd ..',而是鍵入'c d..'。 (另外,你的引用是錯誤的,'d..'不需要引用,而'$ 1'和'$ 2' * do *。) – ruakh

+0

@ruakh對不起,我不知道OP是搞亂了' cd/path/to/somewhere',而不是'cd ..'。奇怪的。修復它。 – jDo

+0

酷,它工作正常!謝謝。 OP意味着什麼? – Tw1x