Leon --

...and then lz said...
% 
% Hi guys,

Hello!


% 
% I have the following line:
% system("cat $FILENAME | mailx -s \"test\" $mailAddress
% ");
% 
% How can I check whether mailx operation above was
% successful or not?

Just check the exit code.  A quick

  perldoc -f system

tells us that

  ...
  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.  See also the exec entry
  elsewhere in this document.  This is not what you
  want to use to capture the output from a command,
  for that you should use merely backticks or
  "qx//", as described in the section on "`STRING`"
  in the perlop manpage.  Return value of -1
  indicates a failure to start the program (inspect
  $! for the reason).
  ...

and so a simple

  $rc = system("cat ...")

(which could, BTW, be written more efficiently without the cat but
instead with a < to feed mailx) will hold the return code and you can
then test against that.

Our lovely camel book has an example where the divide-by-256 is done for
you at capture time that makes this look like

  $rc = 0xffff & system("cat ...")

and saves you a step.


% 
% 
% Thank you!

HTH & HAND


:-D
-- 
David T-G                      * It's easier to fight for one's principles
(play) [EMAIL PROTECTED] * than to live up to them. -- fortune cookie
(work) [EMAIL PROTECTED]
http://www.justpickone.org/davidtg/    Shpx gur Pbzzhavpngvbaf Qrprapl Npg!

Attachment: msg25482/pgp00000.pgp
Description: PGP signature

Reply via email to