[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 请教批处理如何删除指定行?

有文本a.txt,内容如下:
  1. aaaaaaaaaaaaaa
  2. ccccccccccc
  3. xxxxxxxxxx
  4. yyyyyyyyyyyy
  5. AAAAffffff
  6. ccccccccccc
  7. XXXXXX
  8. YYYYYYY
  9. BBBfffffff
  10. ccccccccccc
  11. xxxxxxxxxxxxx
  12. yyyyyyyyyyy
  13. CCCfffffff
复制代码
想要得到下面的内容
  1. aaaaaaaaaaaaaa
  2. AAAAffffff
  3. BBBfffffff
  4. CCCfffffff
复制代码
用gawk或是sed都行,请各位帮忙,谢谢

回复 9# tigerpower

代码改为gawk "/^  *Golang/{a=1}/\[报告\]/{a=0}{if(a==0){print}}" a.txt 能够成功

TOP

不好意思,我要的结果是这样
  1.        2楼    [报告]   
  2.        发表于 2006-01-19 13:32:02 |只看该作者
  3.             好贴
  4.       
  5.        3楼    [报告]   
  6.        发表于 2006-01-19 14:11:28 |只看该作者
  7.             总结的好!!
  8.       
  9.          
  10.       .. 匹配2个字符 abc?(2|9)1    ?匹配0或1个2或9  abc*([0–9])  *匹配0或多个0-9  abc+([0–9])  
  11.        +匹配1或多个0-9  no@(one|ne)   @严格匹配one和ne  no!(thing|where)  !不匹配thing或where
  12.       
  13.       
  14.       
  15.        4楼    [报告]   
  16.        发表于 2006-01-19 14:32:26 |只看该作者
  17.             Good!
  18.       
  19.          
  20.       失去了什么?得到了什么?
  21.       
  22.             
  23.        5楼    [报告]   
  24.        发表于 2006-01-19 18:23:23 |只看该作者
  25.             good
  26.       
  27.          
  28.       
  29.       
  30.        6楼    [报告]   
  31.        发表于 2006-01-20 16:21:40 |只看该作者
  32.       好贴,不过挑点小毛病
复制代码

TOP

  1. sed "/^ *Golang越来越火/,/\[报告] *$/{/\[报告] *$/p;d}" a.txt
复制代码

TOP

  1. awk "/^  *Golang/{a=1}/报告] *$/{a=0}{if(a==0){print}}" a.txt
复制代码

TOP

就是下面的文本,我要删除从“Golang越来越火了”到包含“楼    [报告]   ”之间的行,保留“楼    [报告]   ”这一行
  1.        2楼    [报告]   
  2.        发表于 2006-01-19 13:32:02 |只看该作者
  3.             好贴
  4.       
  5.          
  6.       Golang越来越火了 您还不赶紧开始看看|如何设计好软件的API | 中国数据库技术大会视频 | 微信忍不住了:从前端走向幕后
  7.       
  8.         
  9.    
  10.       pvb1979
  11.       
  12.       pvb1979 当前离线
  13.         空间积分0 信誉积分100 UID20124596阅读权限20积分365帖子342精华0可用积分365 专家积分0 在线时间14
  14.         小时注册时间2004-01-04最后登录2011-05-29
  15.       
  16.       稍有积蓄
  17.       稍有积蓄, 积分 365, 距离下一级还需 135 积分
  18.         帖子342主题64精华0可用积分365 专家积分0 在线时间14 小时注册时间2004-01-04最后登录2011-05-29   问答
  19.         好友
  20.          博客
  21.         消息
  22.         论坛徽章:0
  23.       
  24.        3楼    [报告]   
  25.        发表于 2006-01-19 14:11:28 |只看该作者
  26.             总结的好!!
  27.       
  28.          
  29.       .. 匹配2个字符 abc?(2|9)1    ?匹配0或1个2或9  abc*([0–9])  *匹配0或多个0-9  abc+([0–9])  
  30.        +匹配1或多个0-9  no@(one|ne)   @严格匹配one和ne  no!(thing|where)  !不匹配thing或where
  31.       
  32.       Golang越来越火了 您还不赶紧开始看看|如何设计好软件的API | 中国数据库技术大会视频 | 微信忍不住了:从前端走向幕后
  33.       
  34.         
  35.    
  36.       mrlau
  37.       
  38.       mrlau 当前离线
  39.         空间积分0 信誉积分132 UID627908阅读权限30积分1702帖子545精华0可用积分1702 专家积分0 在线时间76
  40.         小时注册时间2005-03-28最后登录2013-11-13
  41.       
  42.       家境小康
  43.       家境小康, 积分 1702, 距离下一级还需 298 积分
  44.         帖子545主题46精华0可用积分1702 专家积分0 在线时间76 小时注册时间2005-03-28最后登录2013-11-13   问答
  45.         好友
  46.          博客
  47.         消息
  48.         论坛徽章:0
  49.       
  50.        4楼    [报告]   
  51.        发表于 2006-01-19 14:32:26 |只看该作者
  52.             Good!
  53.       
  54.          
  55.       失去了什么?得到了什么?
  56.       
  57.       Golang越来越火了 您还不赶紧开始看看|如何设计好软件的API | 中国数据库技术大会视频 | 微信忍不住了:从前端走向幕后
  58.       
  59.         
  60.    
  61.       linuxunix1
  62.       
  63.       linuxunix1 当前离线
  64.         空间积分0 信誉积分100 UID20204541阅读权限10积分138帖子268精华0可用积分138 专家积分0 在线时间0
  65.         小时注册时间2004-12-03最后登录2007-03-23
  66.       
  67.       白手起家
  68.       白手起家, 积分 138, 距离下一级还需 62 积分
  69.         帖子268主题22精华0可用积分138 专家积分0 在线时间0 小时注册时间2004-12-03最后登录2007-03-23   问答
  70.         好友
  71.          博客
  72.         消息
  73.         论坛徽章:0
  74.       
  75.        5楼    [报告]   
  76.        发表于 2006-01-19 18:23:23 |只看该作者
  77.             good
  78.       
  79.          
  80.       Golang越来越火了 您还不赶紧开始看看|如何设计好软件的API | 中国数据库技术大会视频 | 微信忍不住了:从前端走向幕后
  81.       
  82.         
  83.    
  84.       wwwjy2000
  85.       
  86.       wwwjy2000 当前离线
  87.         空间积分0 信誉积分138 UID13344916阅读权限10积分81帖子91精华0可用积分81 专家积分0 在线时间94
  88.         小时注册时间2003-05-28最后登录2013-04-08
  89.       
  90.       白手起家
  91.       白手起家, 积分 81, 距离下一级还需 119 积分
  92.         帖子91主题17精华0可用积分81 专家积分0 在线时间94 小时注册时间2003-05-28最后登录2013-04-08   问答
  93.         好友
  94.          博客
  95.         消息
  96.         论坛徽章:0
  97.       
  98.        6楼    [报告]   
  99.        发表于 2006-01-20 16:21:40 |只看该作者
  100.       好贴,不过挑点小毛病
复制代码

TOP

本帖最后由 caruko 于 2015-2-28 18:08 编辑

删除后保留空行?
根据什么规则删 ?

都没有说明

TOP

回复 4# 愤怒的CMD
只照你提供的这个样文编代码的话,没有通用性,最好把原文发出来,不然找不到通用的删除规则,只能针对一个样文编一段代码

TOP

文本中从包含ccccccccccc的行开始,删除到包含ffffff的行的上一行为止

TOP

另外,cccc行到有fff的行之间的行数不定

TOP

返回列表