in reply to Check if "System" was succesful
You should check the value of $?.
From perldoc perlvar:$? The status returned by the last pipe close, backtick (``) command, successful call to wait() or waitpid(), or from the system() operator. This is just the 16-bit status word returned by the wait() system call (or else is made up to look like it).
Thus, the exit value of the subprocess is really ("$? >> 8"), and "$? & 127" gives which signal, if any, the process died from, and "$? & 128" reports whether there was a core dump.
(Mnemonic: similar to sh and ksh.)
...
If you have installed a signal handler for "SIGCHLD", the value of $? will usually be wrong outside that handler.
....
Also see "Error Indicators".
|
|---|