免费注册 查看新帖 |

Chinaunix

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

请教怎么转换如下文本? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-01-09 23:43 |只看该作者 |倒序浏览
本帖最后由 white2010 于 2012-01-09 23:49 编辑
  1. DMI_TEST_MSISDN                                                                 
  2. MSISDN                                                                          
  3. NUMBER                                                                          
  4.                                                                                 
  5. DMI_TEST_MSISDN                                                                 
  6. PASSWORD                                                                        
  7. VARCHAR2                                                                        
  8.                                                                                 
  9. DMI_TEST_MSISDN
  10. STATUS                                                               
  11. NUMBER                                                                          
  12.                                                                                 
  13. DMI_TEST_MSISDN                                                                 
  14. CREATE_TIME                                                                     
  15. DATE                                                                           
  16.                                                                                 
  17. DMI_TEST_MSISDN                                                                 
  18. UPDATE_TIME                                                                     
  19. DATE         
复制代码
如何将上面的文本转为:
  1. DMI_TEST_MSISDN
  2. MSISDN   
  3. PASSWORD  
  4. STATUS  
  5. ......
复制代码

论坛徽章:
0
2 [报告]
发表于 2012-01-10 00:23 |只看该作者
  1. sed -n 'p;:1;n;p;:2;n;/DMI_TEST_MSISDN/b1;$!b2' file
复制代码

论坛徽章:
145
技术图书徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11狮子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龙
日期:2014-01-08 15:26:12技术图书徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
3 [报告]
发表于 2012-01-10 01:00 |只看该作者
回复 1# white2010

$ awk '/^DMI_TEST_MSISDN/{if(!a++)print;getline;print}' file
DMI_TEST_MSISDN                                                                 
MSISDN                                                                          
PASSWORD                                                                        
STATUS                                                               
CREATE_TIME                                                                     
UPDATE_TIME

论坛徽章:
2
射手座
日期:2014-10-10 15:59:4715-16赛季CBA联赛之上海
日期:2016-03-03 10:27:14
4 [报告]
发表于 2012-01-10 01:16 |只看该作者
本帖最后由 yinyuemi 于 2012-01-10 01:33 编辑

sed '/DMI_TEST_MSISDN/{1p;d};/^[[:blank:]]\+$/d' file

论坛徽章:
0
5 [报告]
发表于 2012-01-10 10:48 |只看该作者
本帖最后由 ywlscpl 于 2012-01-10 10:50 编辑

回复 1# white2010
  1. ywlscpl@ubuntu:~$ cat file
  2. DMI_TEST_MSISDN
  3. MSISDN
  4. NUMBER

  5. DMI_TEST_MSISDN
  6. PASSWORD
  7. VARCHAR2

  8. DMI_TEST_MSISDN
  9. STATUS
  10. NUMBER

  11. DMI_TEST_MSISDN
  12. CREATE_TIME
  13. DATE

  14. DMI_TEST_MSISDN
  15. UPDATE_TIME
  16. DATE

  17. DMI_TEST_MSISDN1
  18. a

  19. DMI_TEST_MSISDN1
  20. a
  21. b
  22. c

  23. DMI_TEST_MSISDN2
  24. z
  25. x
  26. y

  27. DMI_TEST_MSISDN1
  28. d

  29. DMI_TEST_MSISDN2
  30. z
  31. ywlscpl@ubuntu:~$ awk -F '\n' -v RS= '{delete m;delete v;for (i=2;i<=NF;i++) {n=split(a[$1],m,"\n");for (j=1;j<=n;j++) v[m[j]];if (!($i in v)) a[$1]=a[$1]"\n"$i}}END{for (i in a) print i a[i]"\n"}' file
  32. DMI_TEST_MSISDN
  33. MSISDN
  34. NUMBER
  35. PASSWORD
  36. VARCHAR2
  37. STATUS
  38. CREATE_TIME
  39. DATE
  40. UPDATE_TIME

  41. DMI_TEST_MSISDN1
  42. a
  43. b
  44. c
  45. d

  46. DMI_TEST_MSISDN2
  47. z
  48. x
  49. y

  50. ywlscpl@ubuntu:~$
复制代码

论坛徽章:
3
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亚洲杯之阿曼
日期:2015-04-07 20:00:59
6 [报告]
发表于 2012-01-10 11:08 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
3
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亚洲杯之阿曼
日期:2015-04-07 20:00:59
7 [报告]
发表于 2012-01-10 11:09 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
3
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亚洲杯之阿曼
日期:2015-04-07 20:00:59
8 [报告]
发表于 2012-01-10 11:18 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
dragon23452345 该用户已被删除
9 [报告]
发表于 2012-01-10 11:28 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
dragon23452345 该用户已被删除
10 [报告]
发表于 2012-01-10 11:34 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP