获取输出和退出状态

获取输出和退出状态

本文介绍了从shell_exec()获取输出和退出状态的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当做类似的事情

$output = shell_exec("command 2>&1");

收集命令的标准输出& $output中的stderr,是否可以找到命令的退出状态?

collecting the command's stdout & stderr in $output, is there a way to find the command's exit status?

可以将命令输出写入临时文件,然后附加退出状态,但这很笨拙.有更好的建议吗?

One could write the command output to a temp file and then append the exit status, but that's rather clunky. Any better suggestions?

推荐答案

如您所见,使用shell_exec时,必须将真实"命令与echo $链接起来?获取退出状态:

As you've already seen, when using shell_exec you have to chain your "real" command with echo $? to get the exit status:

 $output_including_status = shell_exec("command 2>&1; echo $?");

但是,如果您希望使用简洁的方法,则可以使用 exec 函数,该函数为此明确允许使用第三个参数.

but if you want the clean way, then you want to use the exec function, which allows a 3rd agument explicitly for this purpose.

这篇关于从shell_exec()获取输出和退出状态的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-30 16:15