Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

Backticks and exit status

by space_monk (Chaplain)
on Oct 31, 2012 at 14:25 UTC ( #1001671=note: print w/replies, xml ) Need Help??

in reply to Re: Run multiple shell commands on the same perl script
in thread Run multiple shell commands on the same perl script

$? returns the result code from the last system() call or backtick operation, I believe, so you can both capture output and process result codes.


#!/bin/perl # first command deliberately generates an error.... print `rubbish`; print "Rubbish Result: $?\n"; # this command should succeed print "ls Output:\n"; print `ls -l`; print "ls Result: $?\n";
Rubbish Result: -1 ls Output: total 10 -rw-r--r-- 1 Userid Domain Users 1242 Oct 30 10:04 1.txt -rw-r--r-- 1 Userid Domain Users 1531 Oct 30 10:04 2.txt -rwxr-xr-x 1 Userid Domain Users 351 Oct 30 10:48 -rwxr-xr-x 1 Userid Domain Users 108 Oct 31 14:21 ls Result: 0
Note the first output of $? is -1 (an error), whilst the second is 0 (success)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1001671]
[stevieb]: use metamod::DateTime. Don't fsck around. Seriously. As someone who's done sensitive date/time stuff, don't roll your own. Use what is available and known stable. Do not guess.
[stevieb]: Date::Time even
[stevieb]: ffs I can't make DateTime link properly, so there.

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (3)
As of 2017-04-29 04:19 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (531 votes). Check out past polls.