本文最后更新于 319 天前,其中的信息可能已经过时,如有错误请发送邮件到wuxianglongblog@163.com
alias别名
显示当前shell进程所有可用的命令别名
alias
定义别名NAME,其相当于执行命令VALUE
alias NAME='VALUE'
在命令行中定义的别名,仅对当前shell进程有效
如果想永久有效,要定义在配置文件中
仅对当前用户:~/.bashrc
对所有用户有效:/etc/bashrc
编辑配置给出的新配置不会立即生效
bash进程重新读取配置文件
source /path/to/config_file
. /path/to/config_file
#撤消别名:unalias
unalias [-a] name [name ...]
#-a 取消所有别名
如果别名同原命令同名,如果要执行原命令,可使用
\ALIASNAME
“ALIASNAME”
‘ALIASNAME’
command ALIASNAME
/path/commmand
例子
1、显示当前shell进程所有可用的命令别名
[root@localhost ~]# 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'
[root@localhost ~]#
2、定义别名rm='mv',在命令行中定义的别名,仅对当前shell进程有效,
[root@localhost ~]# alias rm='mv'
[root@localhost ~]# alias rm
alias rm='mv'
[root@localhost ~]#
如果想永久有效,要定义在配置文件中
仅对当前用户:~/.bashrc
对所有用户有效:/etc/bashrc
[root@localhost ~]# pwd
/root
[root@localhost ~]# ll -a
total 28
dr-xr-x---. 2 root root 135 Aug 18 03:44 .
dr-xr-xr-x. 17 root root 224 Aug 18 11:28 ..
-rw-------. 1 root root 1260 Aug 18 11:29 anaconda-ks.cfg
-rw-------. 1 root root 271 Jan 9 02:22 .bash_history
-rw-r--r--. 1 root root 18 Dec 28 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 28 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 28 2013 .bashrc
-rw-r--r--. 1 root root 100 Dec 28 2013 .cshrc
-rw-r--r--. 1 root root 129 Dec 28 2013 .tcshrc
[root@localhost ~]#
[root@localhost ~]# cat .bashrc
#.bashrc
#User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
#Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
[root@localhost ~]#
[root@localhost ~]# ll /etc/bashrc
-rw-r--r--. 1 root root 2853 Apr 1 2020 /etc/bashrc
[root@localhost ~]#
3、如果别名同原命令同名,如果要执行原命令,可使用以下方法
1、\ALIASNAME
2、“ALIASNAME”
3、‘ALIASNAME’
4、/path/commmand
[root@localhost ~]# alias
alias rm='mv'
[root@localhost ~]#
[root@localhost ~]# rm
mv: missing file operand
Try 'mv --help' for more information.
[root@localhost ~]#
[root@localhost ~]# \rm
rm: missing operand
Try 'rm --help' for more information.//调用原本rm
[root@localhost ~]#
[root@localhost ~]# 'rm'
rm: missing operand
Try 'rm --help' for more information.//调用原本rm
[root@localhost ~]# "rm"
rm: missing operand
Try 'rm --help' for more information.//调用原本rm
[root@localhost ~]# /usr/bin/rm
/usr/bin/rm: missing operand
Try '/usr/bin/rm --help' for more information.//调用原本rm
[root@localhost ~]#