Bash shell终端的别名只是命令的简写,有类似键盘快捷键的效果。如果你经常执行某个长长的命令,可以给它起一个简短的化名。使用alias命令列出所有定义的别名。你可以在~/.bashrc文件中定义别名。使用别名可以节省时间、提高工作效率。
列出所有别名
$ alias
输出如下:
alias命令默认显示当前用户已定义的别名。
定义/创建别名
定义别名的语法:
$ alias name=value
例如使用别名c表示clear命令,清屏。
$ alias c='clear' # 或写到~/.bashrc文件中,使它永久生效
然后可以用c来清屏:
$ c
移除一个别名
语法:
$ unalias alias_name
例如,移除上面的别名c:
$ unalias c
你也需要移除~/bashrc文件中定义的别名。
关于root权限
在~/.bashrc文件中加入如下代码:
$ vim ~/.bashrc
if [ $UID -ne 0 ]; then # 判断是不是root
alias install='sudo apt-get install'
alias update='sudo apt-get upgrade'
alias reboot='sudo reboot'
fi
上面例子实现安装更新软件命令别名,重启命令别名。
14个实用的alias示例
关于ls命令的别名:
# 带颜色的ls别名
alias ls='ls --color=auto'
alias ll='ls -la'
# 显示隐藏文件或目录的命令别名
alias l.='ls -d .* --color=auto'
关于cd命令的别名:
# 进入父目录
alias cd..='cd ..'
# 快速返回到父目录
alias ..='cd ..'
alias ...='cd ../../'
alias ....='cd ../../../'
alias .....='cd ../../../../'
alias .4='cd ../../../../'
alias .5='cd ../../../../../'
关于grep命令的别名:
# 加入颜色输出,在搜索log文件时很有用
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
关于bc命令的别名:
bc是一个终端计算器。使用math库支持:
alias bc='bc -l'
生成sha1:
alias sha1='openssl sha1'
创建目录mkdir别名:
alias mkdir='mkdir -pv'
diff命令比较文件的不同,带颜色输出:
# 安装colordiff软件包,sudo apt-get install colordiff
alias diff='colordiff'
mount命令输出对人友好的信息:
alias mount='mount |column -t'
history、jobs命令别名:
alias h='history'
alias j='jobs -l'
使用别名创建一些新命令:
alias now='date +"%T"'
alias nowtime=now
alias nowdate='date +"%Y-%m-%d"'
alias path='echo -e ${PATH//:/\\n}'
关于vim命令的别名:
alias vi='vim'
alias svim='sudo vim'
alias vims='vim "+set si"'
alias edit='vim'
关于ping命令的别名:
# 设置发几个包
alias ping='ping -c 8'
# 不要间隔1秒钟发一个包
alias fastping='ping -c 10000 -s.2'
显示打开的端口:
alias ports='netstat -tulanp'
唤醒sleeping服务器:
Wake-on-LAN(WOL)允许通过网络开机的一个标准。你可以使用如下别名快速唤醒服务器
alias wakeupnas='wakeonlan 01:22:54:65:34:FF'
# 替换mac地址为服务器mac地址