Как задать стиль для HEADERS в HTML-таблице

Используя любой sed, вы сохраняете %%TRACERTстроки в hстаром пространстве и dудаляете их, в то время как к другим строкам добавляется место хранения с Gи заменяется новая строка (, вызванная добавив )запятую:

sed '/%%TRACERT/{h;d;};G;s/\n/,/' file.csv
-2
18.11.2020, 15:50
2 ответа

попробуй

cat <<EOF > n.html
<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
}
th {background-color: yellow} 
</style>
</head>
<body>
EOF

awk -F, 'BEGIN{print "<table>";} 
    NR==1 { cell="th" ; }
   { print "<tr>";
     for(i=1;i<=NF;i++) printf "<%s>%s</%s>",cell,$i,cell ; 
     print "</tr>" ; cell="td" } 
   END{print "</table>"}' a.txt >> n.html

echo "</body>" >> n.html
echo "</html>" >> n.html

где

  • Я свернул несколько echoв этом документе.
  • Я развертываю многострочную awkпрограмму для удобства чтения.
  • Я используюprintf
  • NR==1 { cell="th" ; }установит cellна для первой строки(cell="th"можно установить в пункте BEGIN, так как cellперезаписывается после каждой печати)
  • thозначает (? )Заголовок таблицы и предназначен для выполнения ваших задач (, хотя вы можете использовать его в любой понравившейся ячейке)
1
18.03.2021, 22:49

Данные разделяются запятой ,, но awkпо умолчанию используется пробел в качестве разделителя полей во входном тексте.

Пожалуйста, попробуйте

awk -F, 'BEGIN{print "<table>"} {print "<tr>";for(i=1;i<=NF;i++)print "<td>" $i"</td>";print "</tr>"} END{print "</table>"}'  File.txt

Параметр -Fзадает символ-разделитель для разделителя столбцов ввода данных (вFile.txt).

0
18.03.2021, 22:49

Теги

Похожие вопросы