System

#
# return status == 0 indicates normal end
#
system( "someShellCommand") == 0 or die "error return: $?";
#
# the return status:
#   - the lower 8 bit encode a received signal number
#   - divide by 256 to obtain the actual exit status  
#
$status = system( "someShellCommand");
if( $status == 0)
{
    print "successful return \n";
}
elsif( $status == 0xff00)
{
    print "error return $!\n";
}	
elsif( $status > 0x80)
{
    $status >>= 8;
    print "exit status $status \n";
}
else
{
    print "received signal $status\n";
}	
#
#
#
@lines = `cat $file_name`;