Linux 中文件名中的字符串替换

Linux 中文件名中的字符串替换

我有大量文件需要File30_i.txt...例如,i=1, 2, 3, 4, 5有没有一种简单的方法可以快速重命名?File20_i.txt

答案1

有一个名为的工具可以实现此目的rename

rename 's/File30/File20/' *.txt

预览运行如下-n

rename -n 's/File30/File20/' *.txt

答案2

我首选的方法是使用 sed 为其生成脚本,例如:

ls -1|sed 's/File30_\([^.]*\).txt/mv & File20_\1.txt/'|bash

这应该按照您在问题中给出的文件名进行重命名。要预览命令,您可以执行以下操作:

ls -1|sed 's/File30_\([^.]*\).txt/mv & File20_\1.txt/'

答案3

重命名器适用于Windows,Mac和Linux:

$ renamer --find Find30 --replace Find20 *.txt

相关内容