2014-10-06 2 views
-2

У меня есть файл filename1.CSV, содержащий:Переименование файлов на основе содержимого файла в UNIX

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

+0

Показано то, что вы пытались до сих пор увеличат ваши шансы получить полезный ответ. – eebbesen

ответ

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 
Смежные вопросы