Bash Shell 暂时禁用别名
别名命令允许用另一个字符串替换一个单词。它主要用于缩写系统命令,或为常用命令添加默认参数。它还可用于在 Linux、OS X、FreeBSD、OpenBSD、Ubuntu/Debian/Red hat/CentOS/Fedora 和类 Unix 操作系统上创建自己的命令。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 不 |
要求 | Linux 终端 |
类别 | Linux shell 脚本 |
先决条件 | 猛击 |
操作系统兼容性 | AIX • Alma • Alpine • Amazon Linux • Arch • BSD • CentOS • Debian • Fedora • FreeBSD • HP-UX • Linux • macOS • Mint • NetBSD • OpenBSD • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu • Unix • WSL |
预计阅读时间 | 2 分钟 |
如何显示当前定义的别名
键入以下命令:
$ alias
示例输出:
如何创建别名
为常用的 clear 命令创建一个名为 c 的别名,该命令用于清除屏幕:
$ alias c='clear'
然后,要清除屏幕,用户只需键入字母 c 并按 [ENTER] 键,而不必键入 clear:
$ c
如何暂时禁用别名?
可以暂时禁用别名并直接调用核心命令。只需在命令前加上反斜杠即可。创建一个名为vnstat的别名:
示例输出:
$ alias vnstat='vnstat -i eth1'
$ vnstat
Database updated: Fri Mar 13 15:30:01 2009 eth1 received: 158.48 GB (20.9%) transmitted: 599.82 GB (79.1%) total: 758.30 GB rx | tx | total -----------------------+------------+----------- yesterday 2.83 GB | 10.90 GB | 13.73 GB today 1.92 GB | 7.31 GB | 9.23 GB -----------------------+------------+----------- estimated 2.97 GB | 11.28 GB | 14.25 GB
现在暂时禁用 vnstat 别名,输入:
$ \vnstat
示例输出:
rx / tx / total / estimated eth1: yesterday 2.83 GB / 10.90 GB / 13.73 GB today 1.92 GB / 7.31 GB / 9.23 GB / 14.24 GB eth0: yesterday 655.05 MB / 2.02 GB / 2.66 GB today 438.01 MB / 1.43 GB / 1.86 GB / 2.86 GB
另一个选项是输入完整的命令路径:
$ /usr/bin/vnstat
您也可以使用以下任何一个命令:
$ "vnstat"
$ 'vnstat'
$ command vnstat
但是,我如何才能永久地取消别名呢?
使用cp 命令进行备份:
$ cp -v ~/.bashrc ~/.bashrc.backup-Feb-05-2022
然后,更新你的 shell 配置文件(如 ~/.bashrc)并删除不需要的别名:
如果出现问题,你随时可以恢复备份,然后再次使用 source 命令:
## use emacs/joe/nano text editor instead of vi##
$ vi ~/.bashrc
$ nano ~/.bashrc # easier option for newbie
$ unalias nameHere
$ unalias vnstat
$ source ~/.bashrc
$ cp ~/.bashrc.backup-Feb-05-2022 ~/.bashrc
$ source ~/.bashrc
$ alias
总结
我希望这能帮助那些希望在 Linux、macOS 和类 Unix 系统上禁用 bash 别名的人。有关更多信息,请使用 man 命令或 help 命令阅读以下帮助/手册页:
$ man bash
$ help source
$ help alias
$ help unalias
$ man vim