背景
ファイルの改行をスペースやカンマに置換し、連結した文字列を標準出力したい作業があったので備忘録として、その方法を記述する。
方法
bashでサクッと実現したいのでインストール等必要ないsedを使う
ファイル
今回、連結した文字列にしたいファイルの内容は下記の通り。
test.txt
a
b
c
d
e
f
g
sedを使った改行の置換
sedを使って繰り返し置換する場合、下記のようにloopを指定する必要がある。
sed -e ':loop; N; $!b loop; s/{置き換えたい文字}/{置き換える文字}/g'
また今回、「置き換えたい文字=\n」「置き換える文字=,」なので最終的には下記のようになる。
$ cat test.txt | sed -e ':loop; N; $!b loop; s/\n/,/g'
a,b,c,d,e,f,g
↧