我的 zshrc 中有一个名为 la 的 ls -als 自定义别名,它被 ls -lAh 之类的东西覆盖了。这是从哪里来的?
I have a custom alias for `ls -als` called `la` in my zshrc, and it's being overwritten by something as `ls -lAh`. Where is this coming from?
我的 .zshrc
中有以下内容
alias la="ls -als"
它正在被覆盖
▶︎ which la
la: aliased to ls -lAh
为什么会发生这种情况/它可能来自哪里?
在 的帮助下,事实证明 oh-my-zsh 在 ~/.oh-my-zsh/lib/directories.zsh
中有一些内置的目录别名,其中之一覆盖了我的自定义别名!
▶︎ cat directories.zsh
# Changing/making/removing directory
...
# List directory contents
alias lsa='ls -lah'
alias l='ls -lah'
alias ll='ls -lh'
alias la='ls -lAh'
您可以通过以下几种方式解决此问题:
- 将我的
la
别名更改为其他别名
- 修改以上
.oh-my-zsh
文件
- 确保我在
.zshrc
中的 source $ZSH/oh-my-zsh.sh
之后定义别名。 source $ZSH/oh-my-zsh.sh
基本上是 .oh-my-zsh/lib
中的所有内容
我选择了最后一个选项。
我的 .zshrc
alias la="ls -als"
它正在被覆盖
▶︎ which la
la: aliased to ls -lAh
为什么会发生这种情况/它可能来自哪里?
在 的帮助下,事实证明 oh-my-zsh 在 ~/.oh-my-zsh/lib/directories.zsh
中有一些内置的目录别名,其中之一覆盖了我的自定义别名!
▶︎ cat directories.zsh
# Changing/making/removing directory
...
# List directory contents
alias lsa='ls -lah'
alias l='ls -lah'
alias ll='ls -lh'
alias la='ls -lAh'
您可以通过以下几种方式解决此问题:
- 将我的
la
别名更改为其他别名 - 修改以上
.oh-my-zsh
文件 - 确保我在
.zshrc
中的source $ZSH/oh-my-zsh.sh
之后定义别名。source $ZSH/oh-my-zsh.sh
基本上是.oh-my-zsh/lib
中的所有内容
我选择了最后一个选项。