为什么`source ~/.aliases` 在 .zshrc 中不起作用?

le_*_*_me 1 zsh alias

user@localhost ~ % zsh --version
zsh 5.5.1 (x86_64-redhat-linux-gnu)
me@localhost ~ % lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: Fedora
Description:    Fedora release 28 (Twenty Eight)
Release:    28
Codename:   TwentyEight
Run Code Online (Sandbox Code Playgroud)

~/.zshrc:

... Details omitted ...
source ~/.aliases
cat ~/.aliases
... Details omitted ...
Run Code Online (Sandbox Code Playgroud)

命令提示符:

user@localhost ~ % zsh
alias ls='exa'
alias grep='rg'
user@localhost ~ % 
Run Code Online (Sandbox Code Playgroud)

所以~/.zshrc被执行,但别名没有任何效果。

如果我source ~/.aliases在 shell 中运行,它会起作用。

我已经尝试了几个小时而没有运气。有任何想法吗?

Kam*_*ski 5

最有可能的是后来获得的东西改变了这些别名。

添加alias sanitycheck='echo sane'到您~/.aliases和运行sanitycheck~/.zshrc刚过你源~/.aliases。重新登录。如果你得到sane那么你就会知道source ~/.aliases工作。

调查您的~/.zshrc. 希望你会发现其他别名lsgrep