电脑必备
批量改部署包文件名,我写了脚本跑两百次才敢推
94 0 13
先说结论:文件重命名这种活儿,手动改三个五个还行,上百个部署包就是自找麻烦。我上周接了个活,要把一批日志压缩包按「日期_服务名_序号」重命名,总共两百多个,挨个改到第三天我直接写了脚本。
场景:运维丢过来一个目录,里面是近半年的服务日志压缩包,文件名乱七八糟,有带时间戳的、有带主机名的、还有俩重名的。要求统一格式后归档到备份盘。
踩坑记录:
- 第一版脚本用 for 循环直接 mv,跑到第 47 个发现重名文件被覆盖了,还好本地有副本,没出事。
- 第二版加了「已存在就加后缀」的逻辑,结果后缀格式不统一,又回头改了半小时。
- 第三版才想起来先干跑(dry-run)一遍,把变更列表输出到 txt,人眼过一遍再真执行。这步是真省心,后面跑两百次没出问题。
数据说话:手动改 10 个平均 45 秒一个,脚本干跑加校验不到 20 秒全量。但前提是脚本得写对,我前后调了四版,调试时间算进去其实不划算——所以后来我干脆把这套逻辑存成模板,下次改个参数直接用。
我的判断:文件批量重命名这事,低频就用系统自带的重命名规则,高频就写脚本。别迷信什么「一键批量改名」的小工具,我试过两个,要么收费,要么规则写得不够灵活,反而多绕一道。
最后问一句:你们批量改文件名一般用什么方案?有没有那种能先预览再执行、还支持正则的,推荐一下。
登录后可以为帖子点赞,但本帖内容对所有人开放阅读。
