免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: itstx
打印 上一主题 下一主题

[文本处理] 把某文件中以?.?.这样形式开头的的行合并到前面一行 [复制链接]

论坛徽章:
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
11 [报告]
发表于 2015-08-14 10:37 |只看该作者
回复 9# itstx

AWK对我而言,是"简易版"的C (easyC)
所以对你(会C/C++)而言,应是也是“简单”才对...

看一下...
awk初学之常见问题
http://bbs.chinaunix.net/thread-2309494-1-1.html   



$ awk -vk="?.?." '
  BEGIN{
    k="^ +" gensub(/([?.])/,"[\\1]","g",k);
    # print "k="k;
  }
  # read file with each line
  {
     N=($0~k)?"":n;
     n="\n";
     printf N $0;
  }
  END{
     print"";
  }' FILE
C::C() (this=, No.Identifier_0=, No.Identifier_1=) at     ?.?.?.?: 37
C::C() (this=, No.Identifier_0=, No.Identifier_1=) at
  abc   ?.?.?.?: 37

论坛徽章:
7
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:18程序设计版块每日发帖之星
日期:2015-08-09 06:20:00每日论坛发贴之星
日期:2015-08-09 06:20:00程序设计版块每日发帖之星
日期:2015-08-22 06:20:00程序设计版块每日发帖之星
日期:2015-08-27 06:20:00
12 [报告]
发表于 2015-08-14 10:43 |只看该作者
本帖最后由 tuyajie 于 2015-08-14 10:44 编辑

这个是系统自动识别的。哈哈。
  1. “;P;”
复制代码
== ;回复 10# itstx


   

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00
13 [报告]
发表于 2015-08-14 13:47 |只看该作者
本帖最后由 九方流云 于 2015-08-14 13:52 编辑

sed  -n ':a;h;n;/\.\?/{H;x;s/\n//p;bc};${H;x;p;q};H;x;ba;:c;:e' a
将就看一下吧,,别怪我方法太笨,我想静静。

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00
14 [报告]
发表于 2015-08-14 13:51 |只看该作者
回复 13# 九方流云


   

论坛徽章:
2
2015亚冠之平阳省
日期:2015-07-08 10:15:132015亚冠之广州恒大
日期:2015-08-11 10:11:23
15 [报告]
发表于 2015-08-18 12:06 |只看该作者
多谢,有时间我得看看sed和awk的基本用法了。回复 11# jason680


   

论坛徽章:
16
CU十二周年纪念徽章
日期:2013-10-24 15:41:3415-16赛季CBA联赛之广东
日期:2015-12-23 21:21:55青铜圣斗士
日期:2015-12-05 10:35:30黄金圣斗士
日期:2015-11-26 20:42:16神斗士
日期:2015-11-19 12:47:50每日论坛发贴之星
日期:2015-11-18 06:20:00程序设计版块每日发帖之星
日期:2015-11-18 06:20:002015亚冠之城南
日期:2015-11-10 19:10:492015亚冠之萨济拖拉机
日期:2015-10-28 18:47:282015亚冠之柏太阳神
日期:2015-08-30 17:21:492015亚冠之山东鲁能
日期:2015-07-07 18:48:39摩羯座
日期:2014-08-29 23:01:42
16 [报告]
发表于 2015-08-18 21:18 |只看该作者
sed -e '1N;s/\n/:/'

论坛徽章:
2
2015亚冠之平阳省
日期:2015-07-08 10:15:132015亚冠之广州恒大
日期:2015-08-11 10:11:23
17 [报告]
发表于 2015-08-19 12:08 |只看该作者
恩,我意识到了。回复 12# tuyajie


   

论坛徽章:
5
白羊座
日期:2014-10-28 11:23:27水瓶座
日期:2015-01-20 10:19:022015亚冠之柏斯波利斯
日期:2015-07-11 18:17:2015-16赛季CBA联赛之同曦
日期:2015-12-23 12:38:582016猴年福章徽章
日期:2016-02-18 15:30:34
18 [报告]
发表于 2015-08-19 13:01 |只看该作者
  1. $ sed -r ':a;N;s/\n[ \t]*(\?\.\?\.)/\1/;ta;P;D' b
  2. C::C() (this=, No.Identifier_0=, No.Identifier_1=) at?.?.?.?: 37
  3. D::D() (this=, No.Identifier_0=, No.Identifier_1=) at?.?.?.?: 38?.?.?.?: 39
  4. fsff
  5. $ cat b
  6. C::C() (this=, No.Identifier_0=, No.Identifier_1=) at
  7.      ?.?.?.?: 37
  8. D::D() (this=, No.Identifier_0=, No.Identifier_1=) at
  9.      ?.?.?.?: 38
  10.      ?.?.?.?: 39
  11. fsff
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP