在shell中,内建(builtin)命令alias,格式以下:
alias [-p] [name[=value] ...]
alias命令用于给1个shell命令建立1个别名,主要用于简化命令,比如说有1个常常要用到的复杂命令,如果每次在使用时都输入这个命令,就显得繁琐了,这时候可以使用alias给这个命令创建1个简单的别名,然后直接使用这个别名就方便多了。
alias命令不指定任何参数或使用选项“-p”时,会打印当前所有的alias别名。通过等号可新建或重置1个别名。如果没有使用等号,当别名name不存在时,出错;否则打印别名状态。
alias命令只对当前shell有效,若想对其它shell或长时间使用alias别名,1般把alias命令放在用户主目录下的文件“.bashrc”中。
unalias命令与alias作用相反,用于删除别名命令,格式以下:
unalias [-a] [name ...]
unalias命令可删除某个别名命令name,或使用参数“-a”删除所有的别名命令。
例子:
$ alias
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
$ unalias -a
$ alias
$ alias foo='uname'
$ foo
Linux
$ alias -p
alias foo='uname'
$ unalias foo
$ alias
$ foo
No command 'foo' found, did you mean:
Command 'fog' from package 'ruby-fog' (universe)
Command 'zoo' from package 'zoo' (universe)
Command 'fio' from package 'fio' (universe)
Command 'fox' from package 'objcryst-fox' (universe)
Command 'woo' from package 'python-woo' (universe)
Command 'fgo' from package 'fgo' (universe)
Command 'goo' from package 'goo' (universe)
Command 'fop' from package 'fop' (universe)
foo: command not found