在我的 .zshrc 中,我尝试创建一些别名。我查看了很多地方,但找不到可行的方法。我使用了以下代码:
# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run alias. # # Example aliases
alias zshconfig="mate ~/.zshrc"
alias ohmyzsh="mate ~/.oh-my-zsh"
alias n= "nano"
alias m= "mkdir"
alias w= "cd ~/Documents/UoMWorkspace/Semester2"
alias j= "cd ~/Documents/UoMWorkspace/Semester2/COMP17412"
然后我写了一个命令source ~/.zshrc
。但问题仍然没有解决。我收到类似这样的错误消息zsh: command not found: j
有人可以给我提出建议并让我知道我做错了什么吗?
答案1
=
别名名称或别名定义之间不能有任何空格:
alias zshconfig="mate ~/.zshrc"
alias ohmyzsh="mate ~/.oh-my-zsh"
alias n="nano"
alias m="mkdir"
alias w="cd ~/Documents/UoMWorkspace/Semester2"
alias j="cd ~/Documents/UoMWorkspace/Semester2/COMP17412"
顺便说一句:如果您正在寻找缩短目录名称的方法,我建议您研究一下命名目录并使用AUTO_CD
别名选项代替:
hash -d w=~/Documents/UoMWorkspace/Semester2
hash -d j=~/Documents/UoMWorkspace/Semester2/COMP17412
这允许您使用~w
代替~/Documents/UoMWorkspace/Semester2
和~j
代替~/Documents/UoMWorkspace/Semester2/COMP17412
(或~w/COMP17412
)。因此cd ~j
与 相同cd ~/Documents/UoMWorkspace/Semester2
。它也可以作为路径的一部分,例如cat ~j/somedir/somefile
。
和
setopt AUTO_CD
zsh
cd
如果在命令行中给出命令并且它不是实际命令的名称,则将自动转到目录。例如
% /usr
% pwd
/usr
% ~w
/home/YOURUSERNAME/Documents/UoMWorkspace/Semester2