Linux 高效 alias 实战技巧大全

张开发
2026/4/14 0:36:38 15 分钟阅读

分享文章

Linux 高效 alias 实战技巧大全
1. 为什么你需要掌握alias命令如果你每天都要在Linux终端里输入大量重复命令alias绝对是你的效率救星。想象一下当你需要查看磁盘使用情况时不用再输入完整的df -h只需要敲两个字母df就能搞定。这就是alias的魅力所在——它能让你的命令行生活轻松十倍不止。我在管理服务器集群时经常需要在几十台机器上执行相同操作。没有alias之前每次都要小心翼翼地输入一长串命令生怕打错一个字符。后来我把所有常用命令都alias化工作效率直接翻倍。比如alias cluster-updatefor i in {1..20}; do ssh node$i sudo apt update sudo apt upgrade -y; done这条命令让我一键就能更新所有节点。2. alias基础从入门到精通2.1 创建你的第一个alias创建alias简单到令人发指基本语法就是alias 别名原命令。比如alias llls -alF这行命令就把ls -alF这个长命令简化成了ll。现在你只需要输入ll就能看到详细的文件列表包括隐藏文件。但要注意这样创建的alias只在当前终端会话有效关闭终端就没了。2.2 让alias永久生效想要alias永久保存你需要把它们写入shell的配置文件中。根据你用的shell不同配置文件也不同Bash用户~/.bashrc或~/.bash_profileZsh用户~/.zshrcCsh/Tcsh用户~/.cshrc我建议单独创建一个~/.bash_aliases文件存放所有alias然后在.bashrc里加上if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi这样做的好处是alias管理更清晰不会把配置文件搞得一团乱。3. 高级alias技巧不只是简化命令3.1 带参数的alias很多人不知道alias其实可以接受参数。虽然alias本身不支持直接传参但我们可以用函数来曲线救国alias mkcd_mkcd(){ mkdir -p $1 cd $1; }; _mkcd现在mkcd new_project会先创建new_project目录然后自动进入。我在创建新项目时这个alias帮我省了无数时间。3.2 组合命令aliasalias最强大的地方在于可以把多个命令组合在一起alias updatesudo apt update sudo apt upgrade -y sudo apt autoremove -y这条命令我称之为三合一更新它会更新软件列表、升级所有软件包并自动清理不需要的依赖。系统管理员必备3.3 安全相关alias有些alias能帮你避免灾难性错误alias rmrm -i alias cpcp -i alias mvmv -i这些alias会在删除、覆盖文件前询问确认。有次我差点误删重要数据库就是这个alias救了我一命。4. 开发者专属alias合集4.1 Git加速器作为开发者这些git alias能让你告别重复输入alias gsgit status alias gagit add alias gcgit commit -m alias gpgit push alias glgit log --oneline --graph --all我团队里的新人用了这些alias后git操作速度直接提升50%。特别是gl这个alias把复杂的log命令简化成了两个字母。4.2 Docker效率工具如果你用Docker这些alias能大幅提升容器管理效率alias dpsdocker ps --format table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}} alias dcudocker-compose up -d alias dcddocker-compose downdps这个alias我特别喜欢它让docker ps的输出更整洁易读。在调试微服务架构时清晰的容器状态显示太重要了。4.3 网络诊断alias排查网络问题这些alias能让你快人一步alias myipcurl ifconfig.me alias portsnetstat -tulanp alias pingping -c 5myip这个alias我几乎每天都会用特别是在配置服务器防火墙规则时快速知道自己的公网IP非常方便。5. 系统管理员必备alias5.1 进程管理神器这些alias能让你优雅地处理失控的进程alias pstopps -eo pid,ppid,cmd,%mem,%cpu --sort-%cpu | head alias psmemps -eo pid,ppid,cmd,%mem,%cpu --sort-%mem | head alias killall_killall(){ ps aux | grep -i $1 | awk {print \$2} | xargs kill -9; }; _killallpstop和psmem能快速找出消耗CPU和内存最多的进程而killall则可以一键终止所有匹配的进程。有次服务器内存泄漏我就是靠psmem快速定位到了问题进程。5.2 磁盘空间分析磁盘满了却找不到大文件这些alias来帮忙alias diskspacedu -S | sort -n -r | less alias bigfilesfind . -type f -size 100M -exec ls -lh {} \ | awk { print \$9 \: \ \$5 }bigfiles这个alias能列出当前目录下所有大于100MB的文件在清理服务器空间时特别有用。6. alias管理进阶技巧6.1 临时禁用alias有时候你需要使用命令的原生版本而不是alias。有两种方法在命令前加反斜杠\ls使用command命令command ls我更喜欢第一种方法因为它更短更快捷。6.2 查看所有alias想知道系统里已经设置了哪些alias简单alias或者更详细的alias -p这个命令会列出所有当前生效的alias包括它们的定义。我在接手新服务器时总是先运行这个命令看看之前的管理员留下了哪些有用的alias。6.3 alias安全注意事项虽然alias很强大但也要注意安全不要alias系统关键命令比如alias lsrm -rf /这种危险操作在共享服务器上设置alias时要谨慎避免影响其他用户重要的alias最好加上注释说明用途我曾经见过有人alias了cd命令导致整个shell行为异常花了半天才找到问题所在。所以alias虽好也要用得聪明。7. 我的私藏alias大公开经过多年积累这些是我每天必用的alias# 快速进入常用目录 alias workcd ~/projects/current_work alias docscd ~/Documents # 简化SSH连接 alias server1ssh userserver1.example.com -p 2222 alias server2ssh -i ~/.ssh/special_key.pem adminserver2.example.com # 时间节省器 alias weathercurl wttr.in alias cheatfunction _cheat(){ curl cheat.sh/$1; }; _cheat # 娱乐彩蛋 alias starwarstelnet towel.blinkenlights.nlcheat这个alias特别酷它能直接从命令行查询各种编程语言的cheatsheet。比如cheat python会显示Python的常用语法速查。而starwars则是一个纯文本版的星球大战电影在等编译时看看挺解闷的。

更多文章