Linux
Bash 別名不適用於 Linux 中的“cd”命令
在 Bash 中嘗試別名,無法看到它與
cd
命令一起使用[0s][/nobackup/sumikum7]> sjc-tftp -bash: /auto/tftp-xeinfra/sumikum7/: Is a directory [0s][/nobackup/sumikum7]> cd sjc-tftp -bash: cd: sjc-tftp: No such file or directory [0s][/nobackup/sumikum7]> cd /auto/tftp-xeinfra/sumikum7/ [0s][/auto/tftp-xeinfra/sumikum7]>
嘗試搜尋幾個地方,但在 Linux 的任何地方都沒有發現這個問題。
筆記:
- bash 版本:GNU bash,版本 4.4.19(1)-release (x86_64-redhat-linux-gnu)
- 為 MAC找到了一些東西,請讓我知道這是否也是這裡的原因。
從 bash 手冊頁:
當字元串用作簡單命令的第一個單詞時,別名允許將字元串替換為單詞。
由於
sjc-tftp
不是第一個單詞,cd sjc-tftp
它不會被擴展。要實現您正在嘗試的內容,您可以使用簡單的 shell 變數$sjc-tftp
或使別名包含 cd 命令,例如:alias sjc-tftp="cd /auto/tftp-xeinfra/sumikum7/"
. 然後只需sjc-tftp
在沒有 cd 的情況下自行鍵入即可更改目錄。您連結到的 Mac 問題似乎在談論符號連結而不是別名。