http://qs321.pair.com?node_id=700647


in reply to DNScmd in perl script

Technically to only test the status code you should use:
if ($? >> 8) { print "Error " }
The lower eight bits of $? contain the signal that terminated the process.

There's more info in the perldoc POSIX documentation. In particular, see the documentation for the functions WEXITSTATUS and WIFEXITED.

Note that you shouldn't always trust the status code since it is possible for the command to terminate (like via a signal) before it has a chance to set it.

Replies are listed 'Best First'.
Re^2: DNScmd in perl script
by ikegami (Patriarch) on Jul 29, 2008 at 08:15 UTC

    Technically to only test the status code you should use:

    But why would he want to ignore other kinds of errors?

Re^2: DNScmd in perl script
by ajd335 (Novice) on Jul 28, 2008 at 21:23 UTC
    Hi , Yes true thing. But the value of $? m getting is -1 all the times...
      I have a feeling that dnscmd is not in your PATH.

      Try printing $! and see if it is No such file or directory.

        Hi , yes , It shows No such file or directory...Where I am wrong...