Можете ли вы изменить формат ввода имен новых столбцов, или вы застряли с echo
. И появляется ли строка заголовка таблицы один раз для каждого файла html или несколько раз?
Для вашей текущей ситуации это будет работать:
echo 'Name, Surname, City' |
awk -F'<TH>|</TH><TH>|</TH>' 'NR==1{n=split($0,a,", *");OFS="";next}/<TH>/{for(i=1; i<=n;i++)$(i+1)="<TH>"a[i]"</TH>"}1' - file.html
Выход:
<TH>Name</TH><TH>Surname</TH><TH>City</TH>
Обратите внимание, что все пойдет не так, когда ваш html-код будет иметь другую форму (дополнительные или отсутствующие символы новой строки). Если вы хотите сделать что-то более продвинутое, вы должны использовать правильный синтаксический анализатор SGML вместо awk
или sed
.