bash/sed を使用して要素リスト形式を変更する

bash/sed を使用して要素リスト形式を変更する

次のリストを含むCSVファイルがあります。

URL,Domain,anchor
https://example1.com,Example1,Category1

次のようにHTMLで再フォーマットする必要があります。

<li><a href="https://example1.com" title="Category1"> Example1 </a></li>

私は成功しなかったし、しばらくsedとawkで遊んだ。これまでの最善のアプローチは、最初の文字列を最初に挿入してからそこで手動でhttps作業することでした。だから私はこれを行うより良いより速い方法があるかどうか疑問に思います。

ベストアンサー1

テストファイルに次の行を追加しましたeg.csv

URL,Domain,anchor
https://example1.com,Example1,Category1
https://unix.stackexchange.com/questions/693322/reformatting-a-list-of-elements-using-bash-sed,This question,Here

その後、次の基本AWKスクリプトを作成しました。

#!/bin/bash
awk -F "," '
 NR == 1 { next } # Ignore titles
  {
     printf( "<li><a href=\"%s\" title=\"%s\"> %s </a></li>\n",
       $1, $3, $2 )
  }
' <eg.csv

結果:

$ ./fmt
<li><a href="https://example1.com" title="Category1"> Example1 </a></li>
<li><a href="https://unix.stackexchange.com/questions/693322/reformatting-a-list-of-elements-using-bash-sed" title="Here"> This question </a></li>

私はそれがあなたのニーズを満たすことを願っています。

おすすめ記事