← 返回首页
2026-05-20

把重复劳动交给脚本

效率自动化

我有个不太严谨的判断:一件事如果手动做了三次以上,还要继续做,就值得花点时间把它脚本化。不是为了炫技,是因为机械劳动最磨人——它不难,但它偷时间,还顺手把注意力切碎了。

什么该自动化,什么不该

不是所有重复都值得自动化。我会先掂量两件事:这件事的频率稳定性。频率高、规则稳定的,脚本回本快;偶尔做一次、每次还都不太一样的,写脚本的时间还不如手动做。经典的那张 “花多久自动化才划算” 的表,糙看一眼就够:每天做、能省几分钟的事,几乎一定值得。

反过来的坑也常见:为了自动化一个一年跑两次的任务,写了两天脚本,还得维护。这不叫效率,叫上头。

我常用的几类小工具

  • 文件批处理:批量改名、按规则归档、转格式。一段 shell 配合 find / sed 就能解决大半。
  • 定时任务:日报汇总、数据备份、定期清理临时文件,丢给 cronsystemd timer,跑完给自己发条通知就行。
  • 一键环境:把项目启动那一长串命令收进一个脚本,新机器或者隔很久回来,跑一下就齐活,不用再翻文档。
  • 剪贴板 / 文本处理:日常要格式化的 JSON、要提取的字段,做成一个随手能调的小命令,比每次打开在线工具快得多。

写脚本的几条自律

脚本写糙了,会从“省事”变成“埋雷”。几条我尽量守住的:

  • 幂等:能重复跑而不出乱子。多跑一次不会重复发、重复删、重复扣,比“跑一次正好”安全得多。
  • 先备份,再动手:任何会改/删文件的脚本,动手前先留个备份或先 --dry-run 打印将要做什么,确认了再真干。
  • 会失败,并且失败得吵set -e 该退就退,关键步骤失败要明确报错,别默默吞掉——最怕脚本“看起来跑成功了”其实啥也没干。
  • 留两行注释:写清这脚本是干嘛的、怎么用。三个月后的自己,约等于一个陌生人。

别让自动化变成新的负担

自动化也有维护成本。脚本会过期,依赖会变,环境会迁。我的做法是:常用的、关键的,好好写、留文档、纳入版本管理;一次性的、临时的,用完就用完,别假装它能传世。能删的脚本,和能跑的脚本一样重要。

小结

自动化的意义不在“省下的那几分钟”,而在于把脑子从机械重复里解放出来,留给真正需要思考的事。少做点机械的,多留点时间——这件事本身,就很值得花时间。