从两列数组,如何将第二列匹配的文件名替换为第一列的条目?

时间:2015-06-17 18:31:52

标签: bash shell

我有一组名称为:string1sth,string2sth,string3sth ...等的文件。它们没有编号;编号只是一个例子。 我有一个两列这种格式的文件:

15  string1
14  string2
4a  string3
4b  string4
11  string5
18  string6
12  string7
2   string8
10  string9
1   string10
8   string11
16a string12

等等。

问题是:我想重命名文件(或创建新文件)但是使用column1而不是2的条目;即用15,14,......等替换以string1,string2 ......等开头的文件名。

有关如何在bash中执行此操作的任何想法?

1 个答案:

答案 0 :(得分:0)

这有效:

while read nn on
do
  mv "$on"* $nn
done < mapping.txt