在 Ubuntu 里,“aliases”通常是 shell 的 alias(比如 alias ll='ls -l'),也可能指 Postfix 邮件别名。下面分别说明怎么“调试”。
alias
或查看某个:
alias ll
有时候“写了但没用”,常见原因:
检查是否被覆盖:
type ll
输出示例:
ll is aliased to `ls -l'
或
ll is a function
或
ll is /usr/bin/ll
不同 shell 不同:
Bash
~/.bashrc # 交互式非登录 shell
~/.bash_profile # 登录 shell(有时)
Zsh
~/.zshrc
修改后重新加载:
source ~/.bashrc
用 alias + set -x:
set -x
ll
set +x
可以看到 alias 展开后的真实命令。
如果命令前加 \,alias 会被跳过:
\ll
sudo ll # 失败
解决:
alias sudo='sudo '
通常是:
/etc/aliases
sudo newaliases
postmap -q user@domain hash:/etc/aliases
sudo tail -f /var/log/mail.log
请补充说明,例如:
我可以给你更精确的调试方法。