AX 爱鲜报

Hacker Scripts 黑客脚本集

源自真实故事的趣味脚本合集:用 cron 定时任务自动发短信请假、回复客户邮件、回滚数据库,甚至远程控制咖啡机。以 Shell/Ruby 为主,是自动化与幽默结合的经典开源项目。

爱鲜报评分

0.0

0 人评分

5k

星数

否

中文

JavaScript

主语言

是

活跃

57

贡献者

人工分析

EDITORIAL

推荐理由

这是 GitHub 上极具知名度的「段子型」开源项目,把日常自动化玩到极致,适合当作学习 cron、SSH、短信/邮件 API 与脚本编排的趣味范例。代码短小易读,也适合作为团队内部分享或教学素材。注意其中部分脚本涉及隐私与伦理争议,仅供娱乐与学习。

适用场景

  • 学习 cron 定时任务与 Shell 脚本编排
  • 演示 Twilio 短信、Gmail 邮件自动化
  • 团队技术分享与趣味教学案例
  • 了解 SSH 会话检测与远程命令执行

优点

  • 故事性强,代码短小,阅读门槛低
  • 覆盖 cron、SSH、短信、邮件、Telnet 等多种自动化手段
  • 近 5 万 Star,社区关注度高,衍生实现多
  • 是理解「脚本化一切」理念的生动教材

缺点

  • 部分脚本内容涉及隐私与伦理争议,不宜照搬
  • 依赖 Twilio、Gmail 等第三方服务与凭据
  • 脚本年代较早,部分 API 与写法可能已过时
  • 许可证为 WTFPL,商用需自行评估合规性
上手难度 入门

项目背景

Hacker Scripts 源自一则广为流传的真实故事:一位「住在终端里」的运维工程师离职后,同事翻出了他留下的自动化脚本——只要某件事需要他花超过 90 秒,他就会写脚本把它自动化。

这些脚本后来被整理开源,成为 GitHub 上最著名的「段子型」项目之一。

脚本一览

  • smack-my-bitch-up.sh:工作日 21:20 检查服务器上是否还有自己的 SSH 会话,若有则从预设理由数组中随机挑一条,发短信给伴侣说「在加班」。
  • kumar-asshole.sh:每 10 分钟扫描收件箱,发现来自客户方 DBA「Kumar」的邮件且含 help、trouble、sorry 等关键词时,SSH 登录客户服务器把 staging 数据库回滚到最近备份,并回复「别担心,下次注意」。
  • hangover.sh:工作日 8:45 若服务器上没有交互会话,就自动发送「身体不适 / 居家办公」类邮件,理由同样随机生成。
  • fucking-coffee.sh:精确等待 17 秒后通过 Telnet 连接咖啡机(运行 Linux、开放 TCP 端口),发送 sys brew 指令,再等 24 秒让咖啡流入杯中——时间正好是从工位走到咖啡机的耗时。

使用方式

脚本依赖若干环境变量,例如 Twilio 的账号 SID 与 Token,以及 Gmail 用户名密码:

TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
GMAIL_USERNAME=admin@example.org
GMAIL_PASSWORD=password

Ruby 脚本需要安装相应 gem(如 dotenv、twilio-ruby、gmail)。

定时任务

各脚本通过 cron 触发,例如:

# 工作日 21:20 运行
20 21 * * 1-5 /path/to/scripts/smack-my-bitch-up.sh >> /path/to/log 2>&1

# 每 10 分钟运行
*/10 * * * * /path/to/scripts/kumar-asshole.sh

注意事项

项目以 WTFPL 发布,欢迎提交 Python、Perl、Shell 等其他语言实现。但其中部分脚本涉及隐私与伦理问题,请仅作学习与娱乐参考,不要直接用于真实工作场景。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。