use strict; use warnings; require 5.008_008; use Carp; use English qw( -no_match_vars ); [...] open my $fh, '-|', "$command" or carp "Error while executing command:$ERRNO\n"; my @command_output = <$fh>; close $fh or carp "ERROR: Couldn't close filehandle: $ERRNO\n"; #### Checking for SCSI ID:0 ioc:0 vol_id:0 type:IM raidlevel:RAID-1 num_disks:2 size(GB):148 state: OPTIMAL flags: ENABLED ioc:0 phys_id:1 scsi_id:8 vendor:ATA product_id:SAMSUNG HE160HJ revision:0-24 size(GB):149 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff ioc:0 phys_id:0 scsi_id:1 vendor:ATA product_id:ST3160812AS revision:J size(GB):149 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff ioc:0 spare_id:2 scsi_id:255 vendor: product_id: revision: size(GB):149 state: MISSING flags: OUT_OF_SYNC sync_state: n/a ASC/ASCQ:0x00/0x00 SMART ASC/ASCQ:0x00/0x00 scsi_id:1 100% scsi_id:0 100%