【发布时间】:2010-12-28 20:15:58
【问题描述】:
当做类似的事情时
$output = shell_exec("command 2>&1");
在$output收集命令的stdout&stderr,有没有办法找到命令的退出状态?
可以将命令输出写入临时文件,然后附加退出状态,但这相当笨拙。有更好的建议吗?
【问题讨论】:
标签: php
当做类似的事情时
$output = shell_exec("command 2>&1");
在$output收集命令的stdout&stderr,有没有办法找到命令的退出状态?
可以将命令输出写入临时文件,然后附加退出状态,但这相当笨拙。有更好的建议吗?
【问题讨论】:
标签: php
正如你已经看到的,当使用 shell_exec 时,你必须用 echo $? 链接你的“真实”命令?获取退出状态:
$output_including_status = shell_exec("command 2>&1; echo $?");
但如果你想要干净的方式,那么你想使用exec 函数,它允许为此目的明确地使用第三个参数。
【讨论】:
以下对我有用 exec() 来显示输出
exec(your_command, $output, $return_var);
var_dump($output);
var_dump($return_var);
【讨论】: