温馨提示×

如何禁用Linux aliases

小樊
41
2026-08-27 17:33:02
栏目: 智能运维

在 Linux 中,禁用(或临时绕过)alias(别名)通常有以下几种方式,取决于你是想临时禁用永久删除,还是仅对当前 shell 生效


一、临时禁用 alias(最常用)

1️⃣ 使用 \ 转义(临时绕过)

\ls

这会忽略 ls 的 alias,直接调用原始命令。

✅ 适合临时使用
✅ 不影响 alias 定义


2️⃣ 使用 command 命令

command ls

效果与 \ 类似,直接调用外部命令,不触发 alias。


3️⃣ 使用完整路径

/bin/ls

直接指定命令的绝对路径,彻底绕过 alias。


二、当前 shell 中取消 alias(本次会话)

查看当前 alias

alias

取消某个 alias

unalias ll

✅ 只在当前 shell 生效
❌ 重新登录或新开终端会恢复


三、永久禁用 alias(推荐)

1️⃣ 删除 alias 定义(最常见)

编辑你的 shell 配置文件:

Bash

~/.bashrc
~/.bash_aliases

Zsh

~/.zshrc

找到类似内容:

alias ll='ls -l'

✅ 删除或注释掉:

# alias ll='ls -l'

然后重新加载:

source ~/.bashrc
# 或
source ~/.zshrc

2️⃣ 临时禁用所有 alias(不推荐长期使用)

unalias -a

⚠️ 会清除当前 shell 所有 alias


四、仅对某个命令禁用 alias(脚本中)

在 shell 脚本中,alias 默认不生效,但如果生效了,可以:

#!/bin/bash
unalias ll 2>/dev/null

或:

\rm file.txt

五、alias 优先级提醒(重要)

命令查找顺序一般是:

alias > shell 内建命令 > 函数 > PATH 中的外部命令

所以:

  • alias覆盖原命令
  • 绕过 alias 才能得到原始行为

六、总结速查表

需求 方法
临时不用 alias \commandcommand cmd
当前 shell 取消 unalias name
永久删除 删除 shell 配置文件中的 alias
忽略所有 alias unalias -a

如果你愿意,可以告诉我:

  • 你用的是 bash / zsh / fish
  • 想禁用的是 某个具体 alias(如 rmls

我可以给你更精确的方案和示例。

0