[英]Bash alias causing error "bash: cd: too many arguments" only when set in .bashrc
我在.bashrc
設置了幾個 bash alias
,但是每次打開新終端時它們都會生成錯誤。 每次打開一個新的終端,都會出現兩個bash: cd: too many arguments
。 別名按預期工作,但無論如何我想解決錯誤。 以下是有問題的別名:
alias .1="cd .."
alias .2="cd ../.."
alias .3="cd ../../.."
alias .4="cd ../../../.."
alias .5="cd ../../../../.."
alias .=".1" #Trouble maker
alias ..=".2"
alias ...=".3"
alias ....=".4"
alias .....=".5"
我已將其范圍縮小到alias .=".1"
作為造成錯誤的罪魁禍首。 我明白了.
是它自己的命令,我在它上面打了一個別名。 我不確定這是否是問題,但我注意到當我刪除這一行時,錯誤消失了。 此外,在 CLI 本身上運行別名不會產生相同的錯誤……只有在.bashrc
中才會產生錯誤。
我嘗試過的事情:
alias .=".1"
更改為alias .="cd .."
導致錯誤的別名是:alias .=".1"。 單個句點是 source 命令的同義詞,它從您作為參數傳遞的文件中讀取並執行命令。
您本質上(無意)所做的是嘗試使用別名更改源命令的行為。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.