Linux下对字符串进行处理,简单的可以使用grep/egrep、cut,处理复杂的可以使用sed、awk。

awk不但可以处理行字符串,还可以处理段落,这里举个使用awk截取文段区间用法例子。

例:

cat  try.txt  
aaaa
123123
bbbb
456456
ccc123456ddd
123k123abc
####截取从bbbb这行到首个123行之间的段落
awk '/bbbb/,/123/'  try.txt   
结果为:  
bbbb
456456
ccc123456ddd


使用python3

#!/usr/bin/env python
import re
with open('try.txt','r') as f:
    content = f.read()
    result=re.findall('.*123123(.*?)ccc.*',content,re.S) ####(.*?)表示除换行外的所有字符,re.S使 . 匹配包括换行在内的所有字符
    for a in result:
        print(a)

结果为:

bbbb
456456