Linux系统之alias别名的基本使用
一、alias别名介绍
1.alias简介
在Linux系统的使用中,我们可以将那些繁琐的命令自定义为我们容易记住的别名,可以理解为快捷方式,用来提高输入命令的效率,方便使用。
2.alias注意事项
1.alias 命令只对当前终端有效,当终端关闭之后,我们所设置的别名全部失效。
2. 如果想让这些别名永久有效且对所有用户生效,我们就需要将它们添加到 /etc/profile 文件里。
3.当别名和命令同名时,将优先执行别名。
3.alias主要用途
- 简化较长的命令。
- 定义一个或多个别名。
- 修改一个或多个已定义别名的值。
- 显示一个或多个已定义别名。
- 显示全部已定义的别名。
二、检查本地系统环境
1.检查操作系统版本
当前实践环境操作系统版本为centos7.6
[root@jeven ~]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
2.检查系统内核版本
[root@jeven ~]# uname -r
6.1.8-1.el7.elrepo.x86_64
三、设置alias别名
1.alias命令的使用帮助
- alias的语法
alias: usage: alias [-p] [name[=value] ... ]
- alias的选项
-p:显示全部已定义的别名。
name(可选):指定要(定义、修改、显示)的别名。
value(可选):别名的值。
2.查看当前系统的所有别名
直接使用alias命令或者加上-p选项,查询当前系统的所有别名。
[root@jeven ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
3.定义一个别名
可以将一些日常经常用的命令使用简单的别名替代,提高工作效率。
例如docker ps -a 这个命名,我们可以使用别名来替换。
[root@jeven ~]# alias dc='docker ps -a'
[root@jeven ~]# dc
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4c894dc1eac4 nginx:1.21 "/docker-entrypoint.…" About a minute ago Up About a minute 0.0.0.0:811->80/tcp, :::811->80/tcp
3.永久定义别名
在 /etc/profile文件中,定义永久别名
alias dc='docker ps -a' # 在/etc/profile行尾追加
[root@jeven ~]# source /etc/profile
[root@jeven ~]#
4.取消别名
使用unalias可以在命令行中取消设置的别名。
unalias -a 取消的所有别名。
unalias -name加指定别名的名称,可以取消特定的别名。
四、函数在别名中的简单使用
删除一个文件时,先将该文件备份到备份目录中,再删除该文件。
- 创建测试文件和备份目录
mkdir ~/backup
cp /etc/passwd /tmp/
- 设置alias别名,命名为rmm。
alias rmm='kao(){ /bin/cp -a $@ ~/backup;rm $@; };kao $@'
- 测试删除文件,发现已成功实现要求。
[root@jeven ~]# rmm /tmp/passwd
rm: remove regular file ‘/tmp/passwd’?
[root@jeven ~]# ls ~/backup/
passwd