csplit分割文件的正则匹配问题

sh/bash/dash/ksh/zsh等Shell脚本
回复
ychristian
帖子: 47
注册时间: 2007-07-17 14:36
送出感谢: 0
接收感谢: 0

csplit分割文件的正则匹配问题

#1

帖子 ychristian » 2010-10-29 17:20

我有个文件,是多个patch的连接比如

代码: 全选

。。。。。。。。。
commit 03bc8c24efe870af8acef2dc7b2b46526309bacd
Author: smurth3 <smurth3>
Date:   Fri Sep 24 10:27:58 2010 +0530
。。。。。。。。。。。。。。
commit 03bc8c24efe870af8acef2dc7b2b46526309bacd
Author: smurth3 <smurth3>
Date:   Fri Sep 24 10:27:58 2010 +0530
。。。。。。。。。。。。。。。
我想分割这个patch到分别得文件里,我用csplit

代码: 全选

csplit input.file "/^commit/"
不知道咋了结果似乎都不对,只有这样的东西

代码: 全选

0
16551988
大家看我错哪里了? 百思不得其解
ychristian
帖子: 47
注册时间: 2007-07-17 14:36
送出感谢: 0
接收感谢: 0

Re: csplit分割文件的正则匹配问题

#2

帖子 ychristian » 2010-10-29 18:08

:em05

csplit似乎不能自动的递归的调用多次, 我首先count了/^commit/的数量,比如132, 那就调用131次.!

然后

代码: 全选

csplit input.file "/^commit/" {131}
Yes
:em11
aerofox
帖子: 1453
注册时间: 2008-05-24 8:30
送出感谢: 2 次
接收感谢: 31 次

Re: csplit分割文件的正则匹配问题

#3

帖子 aerofox » 2010-10-29 21:06

代码: 全选

csplit input.file "/^commit/" "{*}"
回复

回到 “Shell脚本”