免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 8517 | 回复: 2
打印 上一主题 下一主题

文本行横竖转换  关闭 [复制链接]

论坛徽章:
0
1 [报告]
发表于 2006-01-12 08:07 |显示全部楼层
# cat 1

  1. 1 2 3 4 5 6 7 8 9
  2. A B C D E F G H I
  3. 1 2 3 4 5 6 7 8 9
  4. a b c d e f g h i
  5. 1 2 3 4 5 6 7 8 9
  6. A B C D E F G H I
复制代码


# cat a

  1. :a
  2. H;ta
  3. $ {
  4. x
  5. s/\n/ @/g
  6. s/$/ /
  7. s/ //
  8. x
  9. :b
  10. g
  11. s/ [^@]*$//
  12. s/ [^@]*@/ /g
  13. s/@//
  14. p
  15. g
  16. s/@../@/g
  17. h
  18. /@@/!tb
  19. }
复制代码


# sed -n -f a 1


  1. 1 A 1 a 1 A
  2. 2 B 2 b 2 B
  3. 3 C 3 c 3 C
  4. 4 D 4 d 4 D
  5. 5 E 5 e 5 E
  6. 6 F 6 f 6 F
  7. 7 G 7 g 7 G
  8. 8 H 8 h 8 H
  9. 9 I 9 i 9 I
复制代码

评分

参与人数 1可用积分 +1 收起 理由
waker + 1

查看全部评分

论坛徽章:
0
2 [报告]
发表于 2006-01-12 11:12 |显示全部楼层
原帖由 waker 于 2006-1-12 09:12 发表
... 当然部分不支持\n的用户不能通过 ...


Yes, many sed versions don't support \n as a replacement.

论坛徽章:
0
3 [报告]
发表于 2006-01-12 12:35 |显示全部楼层
原帖由 r2007 于 2006-1-12 12:02 发表

这样是否移植性更好?

s/\n\+\([^\n]\)[^\n]*/\1/gp;ta}'


+ is bad for 移植性.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP