从linux中的两个文件内容重命名文件名

时间:2017-09-21 13:38:57

标签: linux renaming

我掌握Linux的基础知识,需要您的帮助来开发以下要求的概念。我有两个文件FILE_NAMES.txt和FILE_NAMES_TS.txt。文件内容如下。

FILE_NAMES.txt
====
jan_
feb_
mar_

FILE_NAMES_TS.txt
====
jan_20170921.csv
feb_20170921.csv
mar_20170921.csv

以上所有内容都只是文件名,并且放在db_views / data目录中。因为FILE_NAMES_TS.txt的内容最初是0字节。现在必须从jan_移动/重命名为jan_20170921.csv,依此类推。这意味着文件jan_20170921.txt现在是非零字节。请帮忙。

2 个答案:

答案 0 :(得分:0)

您可以使用readarray bash函数将文件读入2个数组,然后使用mv命令重命名每个文件

#!/bin/bash

readarray a < names.txt
readarray b < names_ts.txt

len=${#a[@]}

echo $len

for (( i=0; i<${len}; i++ ));
do
    echo mv ${a[$i]} ${b[$i]}
done

答案 1 :(得分:0)

您可以将special file-descriptor technique扩展为同时从两个文件中读取,然后mv