Linux 别名alias
描述
在linux中,alias是内建命令;
alias 命令(注意全为小写)的功能是设置命令的别名,以简写命令,提高操作效率.
配置alias
alias命令包含增删改查
- alias lsal=‘ls -al’ #增加
- alias lsal=‘ls -l’ #修改
- alias/alias -p/alias lsal #查询
- unalias lsal/unalias -a #删除
注意
- 如果定义别名跟原命令重名且想要执行原命令时,在命令前使用反斜线(\)
\my_alias
- 命令行直接配置的别名,仅限当前shell中使用,重启则失效;
- 检查命令是否是别名
[root@centos-36_2 data]# alias myip
alias myip='hostname -I'
[root@centos-36_2 data]# which myip
alias myip='hostname -I'
/usr/bin/hostname
[root@centos-36_2 data]# which hostname
/usr/bin/hostname
[root@centos-36_2 data]#
alias永久生效方法
- 把所有的别名设置加入到($HOME)目录下的.alias 文件中(若系统中无此文件,则新建一个),然后在.bashrc文件中增加如下代码:
#Aliases
if [ -f ~/.alias ]; then
. ~/.alias
fi
- 把所有的别名设置直接加入到($HOME)目录下的.bashrc文件
[root@centos-36_2 data]#cat /root/.bashrc
#.bashrc
#User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias使用方式
- 当前shell下直接使用alias
[root@centos-36_2 data]# alias myip='hostname -I'
[root@centos-36_2 data]# alias myip
alias myip='hostname -I'
[root@centos-36_2 data]# myip
192.166.160.21 172.16.36.2 192.168.122.1 172.17.0.1
[root@centos-36_2 data]#
- shell脚本中使用alias
在Shell脚本中,alias别名功能默认是关闭的,需要手动开启;
bash的**–login**选项的作用是使执行脚本的子Shell成为一个login Shell,而login Shell就会读取系统和用户的profile及rc文件;
[root@centos-36_2 data]# cat test.sh
#!/bin/bash --login
shopt expand_aliases
alias ll
ll
[root@centos-36_2 data]# ./test.sh
expand_aliases off
alias ll='ls -l --color=auto'
bash: ll: command not found
[root@centos-36_2 data]#
[root@centos-36_2 data]# cat test.sh
#!/bin/bash --login
shopt expand_aliases
shopt -s expand_aliases
shopt expand_aliases
alias ll
ll
[root@centos-36_2 data]#
[root@centos-36_2 data]# ./test.sh
expand_aliases off
expand_aliases on
alias ll='ls -l --color=auto'
总用量 137796
drwxr-xr-x 7 root root 181 4月 19 14:13 InspectLOG
drwxr-xr-x 7 root root 196 4月 19 14:13 InspectResult
-rw-r--r-- 1 root root 266 3月 27 15:42 my1.py
-rw-r--r-- 1 root root 337 3月 27 10:40 my_schedu.py
-rw-r--r-- 1 root root 42502 3月 27 17:34 rmdc_inspect.py
-rwxr-xr-x 1 root root 96 7月 29 09:09 test.sh
[root@centos-36_2 data]#