Chinaunix

标题: 如何批量截取文件内容? [打印本页]

作者: wangw8451    时间: 2012-03-07 13:53
标题: 如何批量截取文件内容?
有几百个SHELL脚本,里面都是嵌套的SQL,想截取文件中SQL的where和with ur之间的条件部分,应该怎么写呢?

脚本格式
xxxxxxxxxxxxxxx
xxxxxxxxxxxxx
xxxxxxxxx
db2 "select a,b,n,c,d from ooxx
          where e=xx
          and ...        
          with ur"
想要截取的就是where 和 with ur之间的这部分


作者: zhaopingzi    时间: 2012-03-07 14:20
你的脚本里就一个where...with,还是多少where...with
作者: wangw8451    时间: 2012-03-07 15:40
回复 2# zhaopingzi


    只有一组where 条件
作者: zhaopingzi    时间: 2012-03-07 17:06
本帖最后由 zhaopingzi 于 2012-03-07 17:08 编辑

那就好办了!

  1. $ sed  '1,/where/d;/with/,$d'  file
  2.           and ...
复制代码
是不包含where和with吧

包含的话这样:

  1. $ sed  -n '/where/,/with/p' file
  2.           where e=xx
  3.           and ...
  4.           with ur"
复制代码

作者: fangtong2008    时间: 2012-03-07 17:13
回复 4# zhaopingzi


    这个方法不行吧,如果有多行where with 中间的也输出了
作者: zhaopingzi    时间: 2012-03-07 17:14
回复 5# fangtong2008

楼主说了:
只有一组where 条件

   
作者: shell_heaven    时间: 2012-03-07 22:46
sed '/where/,/with ur/!d;/where/d;/with ur/d'  file




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2