开发者

using shell_exec to call a perl script from php

I am having an issue with executing a perl script from php using the shell_exec() function.

This is what I have tried (and it has worked before).

$perl = shell_exec("/usr/bin/perl cbh_script_clean.pl");
echo ($perl);

This will not 开发者_运维百科work as $perl does not contain anything after this is executed.

Thoughts?

All help is appreciated!

Thanks.


I'll make that an answer then.

You can often append 2>&1 to redirect the stderr output to the normal stdout stream. This way you receive any error messages in the PHP variable. (Otherwise they will get lost with system/exec/shell_exec, which is why people sometimes use proc_open with explicit pipes instead).

$perl = shell_exec("/usr/bin/perl cbh_script_clean.pl 2>&1");
echo ($perl);


Try this:

$perl = shell_exec("/usr/bin/perl cbh_script_clean.pl 2>/dev/null >/dev/null &"); echo ($perl);

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜