如何使用 shell 脚本从多个 csv 文件创建多个 html 表

如何使用 shell 脚本从多个 csv 文件创建多个 html 表

我有两个这样的 csv 文件:

测试1.csv:

user size
aaa   10
bbb   20
ccc   30

测试2.csv:

name value
www   5
mmm   8
ppp   9

我想使用 shell 脚本将其转换为两个单独的 HTML 表。我该怎么做?

答案1

假设文件中的字段以空格分隔,并且每行只有两个字段:

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>标签 a<tr>并将每个字段括在 之间<th>。之后关闭</tr>。第二行类似,但仅从 的第二行转换而来test1.csv

第三行附加最后一行($)以</table>关闭table标签(在第一行打开)。

awk当然,你可以用纯粹的方法来做。

相关内容