in reply to Need to capture return code
If you want to capture the output of the mysql call, use backticks or qx// such as $rtncd = `mysql < $FILE`;. Often, when the actual program return code isn't helpful (for example my program fails gracefully which annoyingly produces a clean return code of 0) I have the program print an error message or error code and then capture that output via backticks. It works pretty well.... # some code print "Importing $FILE.\n"; $rtncd = system("mysql < $FILE") >> 8; # shift right 8 bits to recov +er actual code if($rtncd == 0){ ... # everything OK }else{ ... # some problem ? } print "Sleeping for 5.\n"; system('sleep 5'); ... #more coce
|
|---|