免费注册 查看新帖 |

Chinaunix

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

[文本处理] 如何处理这个文本 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-04-02 16:26 |只看该作者 |倒序浏览
本帖最后由 西厢了个梦 于 2014-04-02 16:28 编辑

有如下文本:
count=50

thread1.thread_id = 10147110                              #进程全局业务代码
thread1.group_id       = 102                           #进程全局组代码
thread1.alias =                                                                                                            
thread1.exepath =                      #进程启动路径
thread1.cmd_param =     #进程命令行参数

thread2.thread_id = 10147111                              #进程全局业务代码
thread2.group_id       = 102                           #进程全局组代码
thread2.alias =                                                                                                            
thread2.exepath =                       #进程启动路径
thread2.cmd_param =   

thread3.thread_id = 10147112                              #进程全局业务代码
thread3.group_id       = 102                           #进程全局组代码
thread3.alias =                                                                                                         
thread3.exepath =                     #进程启动路径
thread3.cmd_param =

thread4.thread_id = 10147113                              #进程全局业务代码
thread4.group_id       = 102                           #进程全局组代码
thread4.alias =                                                                                                            
thread4.exepath =                       #进程启动路径
thread4.cmd_param =                                                                                               

thread5.thread_id = 10147114                              #进程全局业务代码
thread5.group_id       = 102                           #进程全局组代码
thread5.alias =                                                                                                            
thread5.exepath =                      #进程启动路径
thread5.cmd_param =   
.
....

删除其中一个thread 剩下的自动排序
count=49

thread1.thread_id = 10147110                              #进程全局业务代码
thread1.group_id       = 102                           #进程全局组代码
thread1.alias =                                                                                                            
thread1.exepath =                      #进程启动路径
thread1.cmd_param =     #进程命令行参数  

thread2.thread_id = 10147112                              #进程全局业务代码
thread2.group_id       = 102                           #进程全局组代码
thread2.alias =                                                                                                         
thread2.exepath =                     #进程启动路径
thread2.cmd_param =

thread3.thread_id = 10147113                              #进程全局业务代码
thread3.group_id       = 102                           #进程全局组代码
thread3.alias =                                                                                                            
thread3.exepath =                       #进程启动路径
thread3.cmd_param =                                                                                               

thread4.thread_id = 10147114                              #进程全局业务代码
thread4.group_id       = 102                           #进程全局组代码
thread4.alias =                                                                                                            
thread4.exepath =                      #进程启动路径
thread4.cmd_param =     
.
..
删除多个呢?

论坛徽章:
93
2015年辞旧岁徽章
日期:2019-10-10 10:51:15CU大牛徽章
日期:2014-02-21 14:21:56CU十二周年纪念徽章
日期:2020-10-15 16:55:55CU大牛徽章
日期:2014-02-21 14:22:07羊年新春福章
日期:2019-10-10 10:51:39CU大牛徽章
日期:2019-10-10 10:55:38季节之章:春
日期:2020-10-15 16:57:40ChinaUnix元老
日期:2019-10-10 10:54:42季节之章:冬
日期:2019-10-10 10:57:17CU大牛徽章
日期:2014-02-21 14:22:52CU大牛徽章
日期:2014-03-13 10:40:30CU大牛徽章
日期:2014-02-21 14:23:15
2 [报告]
发表于 2014-04-02 16:54 |只看该作者
西厢了个梦 发表于 2014-04-02 16:26
有如下文本:
count=50


原来的是有序的?那删除再多个不一样还是有序的嘛?

论坛徽章:
0
3 [报告]
发表于 2014-04-02 17:49 |只看该作者
回复 2# seesea2517
thread_id是唯一的  比如删除所有thread2开头的行   thread3就要减1 变成thread2但是它的所有其他参数都不变


   

论坛徽章:
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
4 [报告]
发表于 2014-04-02 19:08 |只看该作者

论坛徽章:
768
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
5 [报告]
发表于 2014-04-02 19:21 |只看该作者
回复 4# jason680

这。。。我也正在找这个帖子。
我就记得以前有人问过这个问题,版主也给过代码,
以前提问的居然还是楼主自己。。。


   

论坛徽章:
0
6 [报告]
发表于 2014-04-03 09:07 |只看该作者
回复 5# Herowinter
我想看看有没有其他的方法


   

论坛徽章:
768
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
7 [报告]
发表于 2014-04-03 09:35 |只看该作者
回复 6# 西厢了个梦
删除一个ID这个操作,你是手动在原文件中操作
还是传参数告诉脚本删除哪一个?

   

论坛徽章:
0
8 [报告]
发表于 2014-04-03 09:41 |只看该作者
回复 7# Herowinter
传参 如果是一个可以解决  那如果是多个呢

   

论坛徽章:
768
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
9 [报告]
发表于 2014-04-03 09:42 |只看该作者
回复 8# 西厢了个梦
菜鸟,求别提太难的需求。


   

论坛徽章:
0
10 [报告]
发表于 2014-04-03 09:47 |只看该作者
回复 8# 西厢了个梦
原本有序? 如果你不介意自己一遍一遍的传参数的话, 就自己多传几次~
  1. awk '/count=/{$2--;print;next}$1==DEL{x=1;next}x&&length>0{match($1,/[0-9]+/);n=substr($1,RSTART,RLENGTH)-1;sub(/[0-9]+/,n)}!(llength||length){next}{llength=length}1' FS='[=.[:blank:]]+' DEL='thread2' file5
  2. count 49
  3. thread1.thread_id = 10147110                              #进程全局业务代码
  4. thread1.group_id       = 102                           #进程全局组代码
  5. thread1.alias =                                                                                                            
  6. thread1.exepath =                      #进程启动路径
  7. thread1.cmd_param =     #进程命令行参数

  8. thread2.thread_id = 10147112                              #进程全局业务代码
  9. thread2.group_id       = 102                           #进程全局组代码
  10. thread2.alias =                                                                                                         
  11. thread2.exepath =                     #进程启动路径
  12. thread2.cmd_param =

  13. thread3.thread_id = 10147113                              #进程全局业务代码
  14. thread3.group_id       = 102                           #进程全局组代码
  15. thread3.alias =                                                                                                            
  16. thread3.exepath =                       #进程启动路径
  17. thread3.cmd_param =                                                                                               

  18. thread4.thread_id = 10147114                              #进程全局业务代码
  19. thread4.group_id       = 102                           #进程全局组代码
  20. thread4.alias =                                                                                                            
  21. thread4.exepath =                      #进程启动路径
  22. thread4.cmd_param =   
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP