温馨提示×

ubuntu aliases 和变量区别

小樊
47
2026-08-28 16:29:11
栏目: 智能运维

在 Ubuntu(以及 Linux Shell,如 bash)中,alias(别名)变量(variable) 都用于简化操作,但用途、工作方式和生效范围完全不同。下面用通俗方式说明它们的区别。


一、一句话区别

alias:给命令起“外号”
变量:给数据起“名字”


二、Alias(别名)

1️⃣ 是什么

alias 用来给一条或多条命令起一个短名字,常用于简化常用命令。

2️⃣ 示例

alias ll='ls -lah'
alias gs='git status'

之后你只需要输入:

ll
gs

等价于:

ls -lah
git status

3️⃣ 特点

特点 说明
作用对象 命令
是否可执行 ✅ 是
是否参与计算 ❌ 否
是否可传参 ❌(不能直接像函数)
常见用途 简化命令

4️⃣ 查看与删除

alias           # 查看所有别名
unalias ll      # 删除别名

5️⃣ 永久生效

写入:

~/.bashrc

~/.zshrc

三、变量(Variable)

1️⃣ 是什么

变量用来存储数据(字符串、数字、路径等),供脚本或命令使用。

2️⃣ 示例

name="Tom"
echo $name
JAVA_HOME=/usr/lib/jvm/java-17
export JAVA_HOME

3️⃣ 特点

特点 说明
作用对象 数据
是否可执行
是否参与计算
是否可传参
常见用途 路径、配置、脚本参数

4️⃣ 使用

echo $PATH
echo $HOME

5️⃣ 环境变量 vs 普通变量

VAR=123          # 普通变量
export VAR=123   # 环境变量(子进程可见)

6️⃣ 永久生效

~/.bashrc
~/.profile
/etc/environment

四、核心区别对比表

项目 alias 变量
本质 命令缩写 数据容器
是否能执行
是否能参与运算
使用方式 直接输入 $变量名
示例 ll $PATH
常见用法 简化命令 配置路径、参数

五、容易混淆的场景

❌ 错误示例

alias DIR="/home/user"
cd DIR   # ❌ 错误

✅ 正确做法:

DIR="/home/user"
cd $DIR

六、什么时候用谁?

✅ 用 alias

  • 你只是想少打字
  • 不想改命令逻辑
alias update='sudo apt update && sudo apt upgrade'

✅ 用 变量

  • 需要存储路径、数值、配置
  • 脚本中需要引用
PROJECT_DIR="$HOME/project"
cd $PROJECT_DIR

七、进阶:alias 做不到的事,用函数

mkcd() {
  mkdir -p "$1" && cd "$1"
}

比 alias 更强大。


如果你愿意,我可以:

  • 结合 bash / zsh 深入讲
  • 给你一套 高效 alias 配置模板
  • 解释 alias vs function vs 变量 的选型建议

0