当我向~/.zshrc
添加别名,例如alias dir='cd ~/Desktop/somedir'
并执行source ~/.zshrc
时,它会说"命令无法识别' cd"当试图在iterm 2中使用别名时。
但是,如果我在 iTerm 2 中创建别名而不是~/.zshrc
文件,则会识别它。谁知道为什么会这样?
谢谢!
答案 0 :(得分:5)
您的~/.zshrc
中的单引号似乎未被识别,因此zsh假设给出了两个别名:dir='cd
的定义和~/Desktop/somedir'
的查询dir='cd ~/Desktop/somedir'
。 (zsh允许在一个命令中使用多个别名定义和查询)
您使用的单引号很可能不是来自ASCII(ASCII代码'
)的0x27
,而是一些Unicode表示。根据您的编辑器,编辑~/.zshrc
时可能会自动替换它们。一定要使用一个没有做任何此类自动魔术的文本编辑器' (除非你告诉它)。我认为nano
,vim
和/或emacs
可用于最近的OS X版本。