私の目標は、appstream-util appdata-to-news
NEWS形式(の出力)をマークダウン形式(GitHub / GitLabで使用するため)に変換することです。
私にとって良い近似はここから始めることです。
Version 0.5.1
~~~~~~~~~~~~~
Released: 2019-01-03
* This is a test with a ~ tilde ~~~~
* Second line
これに関して
Version 0.5.1
=============
Released: 2019-01-03
* This is a test with a ~ tilde ~~~~
* Second line
しかし、現在のソリューションはtr '~' '='
以下を提供します。
Version 0.5.1
=============
Released: 2019-01-03
* This is a test with a = tilde ====
* Second line
これを含むすべての行のみを見つける正規表現は、~
次のようになります。^~*$
しかし、bash / sed / awkを使用して同じ番号をどのように変更しますか=
?
答え1
チルダのみを含む行でパターンマッチングを実行し、文字ごとに置換を実行できます。
sed '/^~*$/s/~/=/g'
答え2
以下のsedコマンドを試してみましたが、正常に動作します。
Command: sed '/Version/{n;s/~/=/g}' filename
金利
n_linux_example ~]# sed '/Version/{n;s/~/=/g}' filename
Version 0.5.1
=============
Released: 2019-01-03
* This is a test with a ~ tilde ~~~~
* Second line
[root@praveen_linux_example ~]#