R / Richie全部文章 ↑

Linux · 2 分钟阅读

命令别名:alias

alias 是个能偷懒的小工具——把一长串命令缩成两三个字符。简单,但别滥用。

配置位置

Shell 配置文件
bash ~/.bashrc(非登录交互)
bash ~/.bash_profile 或 ~/.profile(登录)
zsh ~/.zshrc

改完执行 source ~/.bashrc 生效。Zsh 同理。

一些实用的 alias

# 网络
alias ipi="ip -4 addr | grep inet | grep -v 127.0.0.1 | awk '{print \$2}' | cut -d/ -f1 | head -n1"
alias ipe='curl -4 ifconfig.me'

# 常用
alias ll='ls -alF'
alias la='ls -A'
alias c='clear'
alias zhuabao='sudo tcpdump -i any'

# HTTP 简洁版
alias curlb='curl -s -o /dev/null -w "%{http_code} %{time_namelookup} %{time_connect} %{time_starttransfer} %{time_total}\n"'

# HTTP 详细版
alias curld='curl -s -o /dev/null -w "
HTTP状态码:  %{http_code}
DNS解析:     %{time_namelookup}s
建立连接:    %{time_connect}s
首字节:      %{time_starttransfer}s
下载大小:    %{size_download} B
总耗时:      %{time_total}s
"'

想绕过 alias 跑原命令,前缀加反斜杠:\rm 用真正的 rm,而不是 rm -i 之类的别名。

几个技巧

# 临时启用
alias foo='cmd'

# 取消别名
unalias foo

# 查看所有 alias
alias -p

经验

  • 用短但有辨识度的名字,避免和系统命令冲突
  • 公共配置放 ~/.config/shell/aliases.sh 或 ~/.shell/aliases,再由 ~/.bashrc 引入
  • 别把 alias 当历史,复杂的操作写脚本
  • 团队统一一套 alias,新人第一天就有一致的工作流

参考