Giả sử các trường trong tệp của bạn được phân tách bằng dấu cách và bạn chỉ có hai trường trong mỗi hàng:
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
Dòng đầu tiên giả định dòng đầu tiên test1.csv
là đầu bảng. Mở <table>
thẻ, a <tr>
và kèm theo mọi trường giữa <th>
. Sau khi nó đóng cửa </tr>
. Dòng thứ hai tương tự nhưng chỉ biến đổi từ dòng thứ hai test1.csv
.
Dòng thứ ba nối thêm dòng cuối cùng ( $
) </table>
để đóng table
thẻ (được mở ở dòng đầu tiên).
Bạn có thể làm điều đó với awk
tất nhiên tinh khiết .