数字牛马,来活了!
我需要一个批量重名的 CLI,可以实现文件名、后缀名的重命名,可以使用自然数递增、日期时间的表达式,也可以对文件名中的字符串进行替换。
数字员工干活干到今天了,也没给他取个名字,真的很抱歉。 为了方便记忆,就取个名字吧:木牛流马,就这么定了。
这个项目虽小,但是复杂度可见一斑,要处理完美,并不是那么简单的。 不过我们的木牛流马干得很好,就是名字有点长,打字有点累,就简称牛马吧。
测试
好,现在有这么一堆文件需要按自然数递增的方式重命名一下:
上图是命令说明,下面我们来敲:batname .
按照默认自然数递增的方式来重命名当前目录下的所有文件:
敲入 y:
查看结果:
完美!
再来一条:batname -e "img-{0000}" .
-e 表示使用表达式来重命名。
大括号这块是要动态计算的,四个零表示不足四位数的自然数前面补零凑成四位数。
比如:1.jpg 就会变成 img-0001.jpg
我们来试一试吧~
-y 表示无须用户手动确认,直接重命名~
使用 datetime 测试一下:
OK,现在有如下文件:
我想把其中的 img- 都去掉,敲命令:batname -x "img-" "" .
-x 表示替换。
第一个用双引号包住是想要被替换的字符串;
第二个双引号里是新的字符串,这里什么都没写,是用来替换前面这个 img- 变成空,也就是去掉的意思。
最后那个点别丢了,表示当前目录。
走起~
还可以指定起始的自然数,例如:batname -e "img-{0}" -y -b 3 .
大家可以自由实验一下~
开源
国内:
https://gitee.com/ationlove/batname
国外:
https://github.com/ationlove/batname
下载:
https://gitee.com/ationlove/batname/releases/tag/v1.0
提醒:数据安全,人人有责。在你使用之前,请备份好数据~