在 Ubuntu 中,别名(alias)默认只对当前 shell 会话有效,关闭终端就失效了。要让别名跨终端、跨会话生效,需要把它写入 shell 的配置文件。下面按最常见的场景说明。
先确认你用的是哪种 shell(大多数 Ubuntu 默认是 bash,但有些是 zsh):
echo $SHELL
/bin/bash → 用 bash/bin/zsh → 用 zsh编辑 ~/.bashrc:
nano ~/.bashrc
在文件末尾添加别名,例如:
alias ll='ls -alF'
alias gs='git status'
保存后,执行:
source ~/.bashrc
✅ 之后所有新开的终端都会生效
编辑 ~/.zshrc:
nano ~/.zshrc
添加别名:
alias ll='ls -alF'
然后:
source ~/.zshrc
~/.bashrcbash --login → 读取 ~/.bash_profile 或 ~/.profile✅ 推荐做法(bash):
在 ~/.bash_profile 或 ~/.profile 中加入:
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
这样登录 shell 也能加载别名。
编辑系统级配置:
sudo nano /etc/bash.bashrc
添加别名后,所有用户都会生效(谨慎使用)。
alias hello='echo hello'
alias
删除别名:
unalias ll
| 场景 | 推荐方式 |
|---|---|
| 个人用户 | ~/.bashrc / ~/.zshrc |
| 登录 shell 不生效 | 在 ~/.bash_profile 中 source ~/.bashrc |
| 脚本中使用 | ❌ 不建议用 alias,用函数或完整命令 |
如果你愿意,可以告诉我:
我可以给你更精确的配置方案。