Help on parsing Oracle RMAN output for string and print sections of a file

Hi,

I need some advise on how to print 'sections' of the attached file. I am searching for some that says Marked Corrupt and print some lines after it.

At the moment I am running the command below:

sed -n -e '/Marked Corrupt/{N;N;p;}' rman_list_validate.txt

This gives me the following example output:

File Status Marked Corrupt Empty Blocks Blocks Examined High SCN 
---- ------ -------------- ------------ --------------- ---------- 
572  OK     0              699          88960           8317955790709 
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN 
---- ------ -------------- ------------ --------------- ---------- 
582  OK     0              11871        107520          8317956333446 
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN 
---- ------ -------------- ------------ --------------- ---------- 
623  OK     3              1504         1792            8317956324498

Now I want to print out a 'full' section of where the Marked Corrupt is greater than 0. How do I do that?

So in the attached file, I want to be able to see the following example lines and excluding those where Marked Corrupt is 0.

 
... found some above here  ... 

File Status Marked Corrupt Empty Blocks Blocks Examined High SCN 
---- ------ -------------- ------------ --------------- ---------- 
586  OK     5              2490         3328            8311568110013 
  File Name: /db/devq1/data/devq1_fin_cuaudit_a_01.dbf 
  Block Type Blocks Failing Blocks Processed 
  ---------- -------------- ---------------- 
  Data       0              0 
  Index      0              0 
  Other      0              838 
 
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN 
---- ------ -------------- ------------ --------------- ---------- 
623  OK     3              1504         1792            8317956324498 
  File Name: /db/devq1/data/devq1_fin_tdapp_a_01.dbf 
  Block Type Blocks Failing Blocks Processed 
  ---------- -------------- ---------------- 
  Data       0              13 
  Index      0              7 
  Other      0              268 

... and so on

Any advice much appreciated. Thanks.

The following does not print if there is a 0 word in the (3 lines) block

sed -n '
/Marked Corrupt/{
N;N
/[[:blank:]]0[[:blank:]]/!p
}' rman_list_validate.txt

I hope your sed version unterstands the [:blank:] character set.