Moving of file content to another two files after searching with specific pattern

Hello,
Please help me with this!! Thanks in advance!!
I have a file named file.gc with the content:

1-- Mon Sep 10 08:53:09 CDT 2012
2revoke connect from FR2261;
3delete from mkt_allow where grantee = 'FR2261';
4grant connect to FR2261 with '******';
5alter user FR2261 comment
6Channel/SP/LMP';
7grant CLNTSV_PEK to FR2261
8;
9insert into mkt_allow
10select 'FR2261', marketkey
11from (select distinct marketkey
12from mkt_allow
13where grantee in ('CLNTSV_PEK')
14) mktlist (marketkey)
15;
-- Mon Sep 10 08:54:10 CDT 2012
revoke connect from NB2197;
delete from mkt_allow where grantee = 'NB2197';
grant connect to NB2197 with '*****';
alter user NB2197 comment
Kroger/Exxon/Mapco/LMP Stater Bros/Couch/petco';
grant CLNTSV_PEK to NB2197
;
insert into mkt_allow
select 'NB2197', marketkey
from (select distinct marketkey
from mkt_allow
where grantee in ('CLNTSV_PEK')
) mktlist (marketkey)
;

Query1:
I need to search for the pattern FR2261 and need to move the lines from the pattern till the next semicolon (:wink: to a file called revoke.
This revoke file already contains some date. I need to add the lines at the end of the revoke file.
Before adding this line i need to add one more line which looks like the output of
echo "--`date` Revoked as per $Requestor/$ticket" (where Requestor and ticket are two variables read from the user).
Query:
Also we need to paste the lines starting with revoke and delete (ex: lines 2&3) matched to the pattern FR2261 to a file called man_revoke. This revoke file already contains 4 lines (may also change). 1st line and last line should be as it is. Only in between lines need to be replaced with the current revoke&delete lines.
Query3:
After copying those lines to revoke & man_revoke files i need to delete the same lines from file.gc file. Also we should remove the line -- Mon Sep 10 08:53:09 CDT 2012.
Sometimes this line may not exist. If it doesn't exist, we just neglect that part. so we need to give a condition as if the line prior to the searched pattern contains "--" (reference of the above line) we need to delete that line. Otherwise, we need to neglect it.
Query4:
How the above steps can be performed for multiple patterns (like FR2261 &NB2197)

Best Regards,
Sreenivas