在 CentOS(以及一般的 Linux shell)里,aliases(别名)本身不会“自动检测冲突”,但是否“有冲突”要看你怎么定义:
如果你在 ~/.bashrc 或 /etc/bashrc 里写了:
alias ll='ls -l'
alias ll='ls -la'
后定义的会覆盖前面的,不会提示冲突,只是你最终用的是最后一个。
优先级一般是:
alias > function > 内置命令 > 外部命令
例如:
alias cp='cp -i'
这样会覆盖原生的 cp,可能和你预期行为不同,但系统不会报错。
CentOS 常见加载顺序(bash):
/etc/profile
└─ /etc/bashrc
~/.bash_profile
└─ ~/.bashrc
└─ ~/.bash_aliases(如果有)
后加载的会覆盖先加载的 alias。
你可以这样看:
alias | sort
或者只查某个:
alias ll
~/.bash_aliasesrm、cp、mv)除非明确知道后果type 命令名 看最终执行的是什么:type ll
如果你愿意,可以把你的 alias 配置贴出来,我可以帮你检查有没有潜在冲突或覆盖问题。