ydydo’s blog

自分用メモ

sed の後方参照の使い方

西暦、月日、時分秒が並んだ"20200630110100"のような文字列を、"2020,0630,110100"のように西暦と月日と時分秒の間に カンマ','を入れたいときは後方参照が使うと便利

> echo "20220927080000" | sed 's/\(....\)\(....\)/\1,\2,/'
2022,0927,080000

 

1\は西暦、\2は月日に対応している

ここでは西暦と月日を検索パターンとしているがやるならもっと増やしてもよい。

またパターン1とパターン2の入れ替えも出来る(この例だとあまり意味はないけど)

 

> echo "20220927080000" | sed 's/\(....\)\(....\)/\2,\1,/'
0927,2022,080000