黑客脚本:一个工程师把日常工作全自动化了

📅 2026/7/2 14:53:16
黑客脚本:一个工程师把日常工作全自动化了
文章目录黑客脚本一个工程师把日常工作全自动化了几个典型的脚本为什么这个项目火了技术实现实际意义黑客脚本一个工程师把日常工作全自动化了这个项目的 Star 数接近五万起因是一个真实的故事。一家公司的构建工程师离职了同事们翻他的遗留代码发现了一堆脚本。这些脚本干的事情说出来有点离谱但又让人觉得合理。这个工程师有个习惯任何一件事如果需要超过 90 秒才能完成他就写个脚本去自动化它。日积月累他留下了一整套自动化工具覆盖了生活和工作的方方面面。几个典型的脚本自动给老婆发消息有个脚本叫 smack-my-bitch-up功能是晚上 9 点以后如果检测到他还在服务器上有活跃的 SSH 会话就自动给老婆发一条加班晚回的短信。消息内容每次从一个字符串数组里随机挑选。整个过程跑在 cron 任务里完全不需要他手动操作。自动回复客户邮件另一个脚本叫 kumar-asshole。它会扫描收件箱里来自特定联系人一个叫 Kumar 的 DBA的邮件。如果邮件里包含help、“trouble”、sorry这类关键词脚本会自动 SSH 到客户的服务器把 staging 数据库回滚到最新备份然后回复一封没事下次注意的邮件。从发现问题到修复再到回复全程无人值守。自动请假hangover 这个脚本也是 cron 任务设置在特定日期运行。如果早上 8:45 服务器上没有他的交互会话说明他没到公司脚本就自动发一封身体不适今天远程办公的邮件。理由同样是从预设列表里随机选的。自动泡咖啡最经典的是 fucking-coffee.sh。这个脚本等 17 秒然后通过 telnet 连接到公司的咖啡机没人知道那台咖啡机居然跑着 Linux 并且开了 TCP 端口发送一条类似sys brew的指令。咖啡机开始做一杯中杯半脱因拿铁再等 24 秒后出杯。这个时间刚好是他从工位走到咖啡机的时间。为什么这个项目火了这些脚本本身代码量不大技术含量也算不上多高。但它们火的原因很直接每个程序员看到都会会心一笑。我们日常工作中有大量重复性的事情。发消息、回邮件、请假、泡咖啡每件事单独看都不费劲但加在一起就是一堆琐碎的负担。这个工程师的做法是把所有超过 90 秒的事情都写成脚本用 cron 调度让机器替他处理。这种思维方式比脚本本身更有价值。技术实现项目里的脚本主要用 Bash 和 Ruby 写的。用到了 Twilio 的短信 API、Gmail 的 Ruby gem以及标准的 cron 定时任务。环境变量配置好之后部署就是几行命令的事。项目也接受其他语言的实现Python、Perl、Shell 版本都有人提交了 Pull Request。代码用的是 WTFPL 协议基本等于随便用。实际意义这个项目不是那种能直接拿来用的工具。它更像是一种思路的展示当你发现自己在重复做某件事的时候停下来花几分钟写个脚本长期来看能省下大量时间。当然自动给老婆发消息这种操作被发现了可能会有麻烦。自动回客户邮件也要谨慎数据库回滚这种事出问题就不是小事了。但核心理念是对的能自动化的就不要手动。对于程序员来说这个项目值得翻一翻。不一定要照搬但可以从中得到启发看看自己日常工作中有哪些环节适合用脚本来替代。这个项目值得翻一翻。不一定要照搬但可以从中得到启发看看自己日常工作中有哪些环节适合用脚本来替代。