根据unix中的文件内容重命名文件

时间:2014-10-06 02:04:15

标签: file unix awk rename

我有一个文件filename1.CSV,其中包含:

Number
Date
P3_1.1
P3_3.1

包含以下内容的文件filename2.CSV

Number
Date
Bu1.1
Bu1.2

我希望根据第三行重命名文件:

filename1.csv -> filename_p3.csv
filename2.csv -> filename_bu1.csv

1 个答案:

答案 0 :(得分:0)

这是一个想法:

for name in filename1.csv filename2.csv; do
  { read line; read line; read line; } < "$name"
  newname="${name/[0-9]*/}_${line/[_.]*/}.csv"
  echo "$newname"
  # mv -i "$name" "$newname"
done