Chinaunix

标题: 如何去掉行尾的"\"并且下一行合并上来 [打印本页]

作者: soway    时间: 2008-09-03 15:03
提示: 作者被禁止或删除 内容自动屏蔽
作者: ly5066113    时间: 2008-09-03 15:13
sed ':a;$!N;s/\\\n//;ta;D'
作者: waker    时间: 2008-09-03 15:13
awk '!/\\$/{print ""}
{printf $0}' urfile
作者: leetaedong    时间: 2008-09-03 15:17
sed '/\\/{N;s/\\\n//}' b
作者: MYSQLER    时间: 2008-09-03 15:18
sed '/\\/N;s/\\\n//;' file
作者: waker    时间: 2008-09-03 15:22
4,5楼
给多个连续的行都加上\
2楼的方法显然更可靠
作者: ly5066113    时间: 2008-09-03 15:24
原帖由 waker 于 2008-9-3 15:13 发表
awk '!/\\$/{print ""}
{printf $0}' urfile


这个顺序反了吧?

awk '{printf $0}
!/\\$/{print ""}' urfile
作者: waker    时间: 2008-09-03 15:33
标题: 回复 #7 ly5066113 的帖子
哦,逻辑思维紊乱初期就这样
作者: soway    时间: 2008-09-03 15:37
提示: 作者被禁止或删除 内容自动屏蔽
作者: MYSQLER    时间: 2008-09-03 15:40
原帖由 waker 于 2008-9-3 15:22 发表
4,5楼
给多个连续的行都加上\
2楼的方法显然更可靠



嗯!有多个连续行时会出错。感谢waker提醒.

原帖由 ly5066113 于 2008-9-3 15:24 发表


这个顺序反了吧?

awk '{printf $0}
!/\\$/{print ""}' urfile


  1. cat file
  2. INT 11
  3. IS   c9-1 R1368-1 \
  4.           R1386-2 \
  5.           R22323-2 \
  6.           2323232  
  7. ISO   J1-16 J2-L001 \
  8. 123
复制代码

  1. awk '{printf $0}                       
  2. !/\\$/{print ""}' file
  3. INT 11
  4. IS   c9-1 R1368-1 \          R1386-2 \          R22323-2 \          2323232  
  5. ISO   J1-16 J2-L001 \123
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2