Can I run repair on lot of blocks with single command ?

Hi,

I have Solaris-10 OS on T5220. Both local disks were mirrored under SVM. Somehow when one disk gone bad (c0t1d0), other disk (c0t0d0) also got lot of bad block. We have readable data only on c0t0d0, but as soon as server comes after, it hangs when I run few commands because of read errors, possibly on those bad blocks.

I boot server in failsafe mode and ran format --> analyze --> read. After some reading, it starts giving below error and continued further for other blocks

WARNING: /pci@0/pci@0/pci@2/scsi@0/sd@0,0 (sd2):
        Error for Command: read(10)                Error Level: Retryable
        Requested Block: 39607175                  Error Block: 39607175
        Vendor: SEAGATE                            Serial Number: 110371NW03
        Sense Key: Media Error
        ASC: 0x11 (unrecovered read error), ASCQ: 0x0, FRU: 0x81

Usually read will correct defects, but it is not correcting. After a while, if I do Ctlr+c, it says 0 defects repair. But if do format --> repair --> 39607175, it is able to correct it. If I run read it, it will not pick same block, so I am assuming that repiring is done on that block. There are total 585912500 blocks on this disk.

Can somebody suggest/help, if I can run a single command or put something in loop on repair command from 39607176 to 585912500 ?
Running manual repair on thousands on blocks is not possible. If I can run single command or script, I can leave it running for whole night. I am in failsafe mode right now.

Regards

This content should be part of this thread http://www.unix.com/shell-programming-and-scripting/271116-need-help-scripting-do-repair-format-tool-solaris.html.

Closing thread.