awk提取文件内容,限定开始、结束,和之间的关键字

有下列格式的文件
abc xxx
xxx
xxx keyword xxx
xxx
bcd xxx
xxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxx
xxxxxxx
abc xxx
xxx
xxx keyword xxx
xxx
bcd xxx

想提取出以abc开头,bcd结尾,并且包含keyword的部分
如下:
abc ****


****keyword ****


bcd ****

我的做法如下:
#! /bin/awk -f
/^abc/,/^bcd/ {
#record=$0
if ($0 ~ /keyword/){
print $0 #此处的$0并不是上面的abc开头bcd结尾的部分,而是“**** keyword
#print record #保存之前的$0,再打印结果也是“
keyword ****”
}
}

问:如何改动才能实现我的需求?感谢