Linux根据列表重命名批处理文件

时间:2016-10-19 13:22:11

标签: linux list file rename

我希望根据单独列表中的名称重命名一堆文件。情况如下:

文件: file_0001.txt file_0102.txt file_ab42.txt

我想根据相应名称列表更改这些文件的名称,如下所示: 0001 abc.01 0102 abc.02 ab42 def.01

我想为每个文件替换第二列中的部分列表第一列中出现的名称部分:

file_0001.txt -> file_abc.01.txt
file_0102.txt -> file_abc.02.txt
file_ab42.txt -> file_def.01.txt

我查看了几个mv,重命名和这样的命令,但我只找到了根据文件名中的单个模式重命名批处理文件的方法,而不是将更改与列表匹配。

有没有人有我可以用来做这个脚本的例子?

1 个答案:

答案 0 :(得分:0)

while read a b; do mv file_$a.txt $b;done < listfile