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


in reply to Re: qx not always capturing stdout
in thread qx not always capturing stdout

No change, same output. Or rather lack thereof.

Replies are listed 'Best First'.
Re^3: qx not always capturing stdout
by FreeBeerReekingMonk (Deacon) on Mar 24, 2016 at 00:26 UTC
    Found an example, where the daemonization closes STDOUT and STDIN in order to not create files. This could confuse the child process (which has no stdout). So either, maybe this works:

    use Daemon::Simple; open(SAVEIN, "<&STDIN"); open(SAVEOUT, "<&STDOUT"); Daemon::Simple::init("daemon"); open(STDIN, "<&SAVEIN"); open(STDOUT, "<&SAVEOUT"); print qx("/external/command"); close(STDIN); close(STDOUT);

    or you will have to redirect your output to a file

    qx("/external/command > /tmp/file")

    and read it back using open(), diamond and close()