我该怎么做呢:
aaa
bbb
ccc
进入这个:
aaa,
bbb,
ccc
使用sed
?
注意所有行都以逗号结尾,但最后一行除外。
在我真正的问题中,我也在线上做了一些正则表达式替换。有没有不会重复的解决方案吗?
答案 0 :(得分:4)
您可以使用:
sed '$q;s/$/,/'
如果您想在最后一行应用不同的替换,您仍然可以使用$
地址:
sed '$s/$/;/;$q;s/$/,/'
如果是最后一行,上面的代码会用;
替换行尾,否则会使用,
。
$s/$/;/
=在最后一行,用;
$q
=在最后一行,退出s/$/,/
=使用,
最后一个s
命令将针对每一行运行,但不会针对2. {2}处的q
命令告诉它退出的最后一行。
请参阅: