Как создать несколько HTML-таблиц из нескольких CSV-файлов с помощью сценария оболочки

345
Praveen Prakasan

У меня есть два CSV-файла, как это:

test1.csv:

user size aaa 10 bbb 20 ccc 30 

test2.csv:

name value www 5 mmm 8 ppp 9 

Я хочу преобразовать это в две отдельные таблицы HTML, используя скрипт оболочки. Как мне это сделать?

0

1 ответ на вопрос

0
uzsolt

Предположим, что поля в ваших файлах разделены пробелами, и у вас есть только два поля в каждой строке:

sed -E '1 s@^([^ ]*) *(.*)@<table><tr><th>\1</th><th>\2</th></tr>@ ; \ 2,$ s@^^([^ ]*) *(.*)@<tr><td>\1</td><td>\2</td></tr>@ ; \ $ s,.*,&</table>,' test1.csv 

Первая строка предполагает, что первая строка test1.csvявляется заголовком таблицы. Откройте <table>тег, а <tr>и заключите каждое поле между ними <th>. После закрытия </tr>. Вторая строка похожа, но трансформируется только из второй строки test1.csv.

Третья строка добавляет последнюю строку ( $) </table>для закрытия tableтега (открывается в первой строке).

Вы можете сделать это с чистым, awkконечно.