先日のシェル芸勉強会の問題を解いている際、sedでブレース展開させてその値を置換後の値として利用させる方法を思いついたので、忘れないように備忘で残しておく。 といっても、実際やってることは前に書いた複数回ごとにヒットした箇所に対しての置換処理の応用みたいなものなんだけど。

処理方法だが、以下のようにsedを実行することで置換後の値にブレース展開をした値を順番に置き換えていく事ができる。

echo {a..g} | sed 's/ /\n \n/g' | sed -z -e's/ /'{1..100}'/'

blacknon@BS-PUB-UBUNTU-01:~$ echo {a..g}_line | sed 's/ /\n \n/g'
a_line

b_line

c_line

d_line

e_line

f_line

g_line
blacknon@BS-PUB-UBUNTU-01:~$ echo {a..g}_line | sed 's/ /\n \n/g' | sed -z -e's/ /'{1..100}'/'
a_line
1
b_line
2
c_line
3
d_line
4
e_line
5
f_line
6
g_line