sed 匹配\n换行符


假设 str="a,b,c,d"

echo ${str} | sed "s/,/\n/g"

输出:

a

b

c

d

echo ${str} | sed "s/,/\n/g" | sed  "s/\n/,/g"

输出:

a

b

c

d

没有匹配到\n换行符

这是因为sed 模式是以\n换行符作为行的结束标记的。它没有办法匹配到\n再替换

解决方法:

echo ${str} | sed "s/,/\n/g" | sed  "s/\n/,/g" | sed ":label;N;s/\n/,/;b label"

输出:

a,b,c,d


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM