Macos 带iterm 2的zsh无法识别我的别名

Macos 带iterm 2的zsh无法识别我的别名,macos,alias,zsh,iterm,Macos,Alias,Zsh,Iterm,当我向~/.zshrc添加别名时,例如别名dir='cd~/Desktop/somedir'和do源代码~/.zshrc,当我尝试在iterm 2中使用别名时,它会显示“未识别的命令”cd 但是,如果我在iTerm 2中创建别名,而不是~/.zshrc文件,它确实可以识别它。有人知道为什么会这样吗 谢谢 您的~/.zshrc中的单引号似乎不被识别,因此zsh假设给出了两个别名:定义dir='cd和查询~/Desktop/somedir',而不是dir='cd~/Desktop/somedir'。

当我向
~/.zshrc
添加别名时,例如
别名dir='cd~/Desktop/somedir'
和do
源代码~/.zshrc
,当我尝试在iterm 2中使用别名时,它会显示“未识别的命令”cd

但是,如果我在iTerm 2中创建别名,而不是
~/.zshrc
文件,它确实可以识别它。有人知道为什么会这样吗


谢谢

您的
~/.zshrc
中的单引号似乎不被识别,因此zsh假设给出了两个别名:定义
dir='cd
和查询
~/Desktop/somedir'
,而不是
dir='cd~/Desktop/somedir'
。(zsh允许在一个命令中定义多个别名和查询)


您使用的单引号很可能不是来自ASCII(ASCII代码
0x27
)的
,而是一些Unicode表示形式。根据您的编辑器,当您编辑
~/.zshrc
时,它们可能会自动被替换。要确保使用的文本编辑器不会产生任何这样的“自动魔法”(除非你告诉它)。我想到最近的OS X版本中有
nano
vim
和/或
emacs

这是100%的问题。我让文件打开是默认的文本编辑。一旦我在Sublime中打开它并从那里编辑,一切都很好。好主意!在试图找出如何添加别名时发现了这个问题,您的问题为我提供了我想要的答案。谢谢