regarding the return code from system
, here's a perldoc -f system
The return value is the exit status of the program
as returned by the "wait" call. To get the actual
exit value divide by 256.
-- snip --
You can check all the failure possibilities by
inspecting "$?" like this:
$exit_value = $? >> 8;
$signal_num = $? & 127;
$dumped_core = $? & 128;
See also the $?
section in perldoc perlvar
. In brief, it is The status returned by the last pipe close, backtick ("``") command, successful call to wait() or
waitpid(), or from the system() operator.