从某个软件下载文件时,网络原因或是软件的问题,有很多文件其实已经下载完成,可以使用,但是文件名称没有修改过来,还是下载时的x x x.tmp的文件后缀。

这对排序、平时的使用构成了困扰。

但是几百个文件,一个一个修改太累也太笨了。

批量改文件名这个需求应该是很普遍的,一般的编程语言都有涉及到文件系统的库,写个脚本应该不是大问题。

如果可以使用bash的话就更加效率了,google一下”批量 重命名”,看到一个rename 命令,本地一打:

~ rename
zhh: command not found: rename

再一打:

~ brew install rename
~ rename
Usage:
rename [switches|transforms] [files]

Switches:

--man (read the full manual)
-0/--null (when reading from STDIN)
-f/--force or -i/--interactive (proceed or prompt when overwriting)
-g/--glob (expand "*" etc. in filenames, useful in Windows™ CMD.EXE)
-k/--backwards/--reverse-order
-l/--symlink or -L/--hardlink
-M/--use=Module
-n/--just-print/--dry-run
-N/--counter-format
-p/--mkpath/--make-dirs
--stdin/--no-stdin
-t/--sort-time
-T/--transcode=encoding
-v/--verbose

Transforms, applied sequentially:

-a/--append=str
-A/--prepend=str
-c/--lower-case
-C/--upper-case
-d/--delete=str
-D/--delete-all=str
-e/--expr=code
-P/--pipe=cmd
-s/--subst from to
-S/--subst-all from to
-x/--remove-extension
-X/--keep-extension
-z/--sanitize
--camelcase --urlesc --nows --rews --noctrl --nometa --trim (see manual)

研究一下用法,测试过效果后,再来一下:

~ rename -v "s/.mp3.*?.tmp/.mp3/" *

瞬间搞定,会使用工具真好!