Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 退出代码以配置/制作/制作安装_Linux_Apache_Bash_Shell_Scripting - Fatal编程技术网

Linux 退出代码以配置/制作/制作安装

Linux 退出代码以配置/制作/制作安装,linux,apache,bash,shell,scripting,Linux,Apache,Bash,Shell,Scripting,在我的公司,我们必须手动配置和安装apaches。因此,我正在使用脚本自动安装它。 我的问题是找不到configure/make/make安装的退出代码 我找到了一个检查输出的解决方法,但它几乎不起作用。 有没有办法检查命令是否成功完成? 我尝试使用exit(0),但命令始终完成。我需要知道他们是否以错误结束。 感谢您的帮助您可以通过检查$?,查看上一个命令是否失败?。因此,如果您正在编写configure/make/make安装脚本,您将执行以下操作(我将使用configure作为示例): 您

在我的公司,我们必须手动配置和安装apaches。因此,我正在使用脚本自动安装它。
我的问题是找不到configure/make/make安装的退出代码
我找到了一个检查输出的解决方法,但它几乎不起作用。

有没有办法检查命令是否成功完成?
我尝试使用exit(0),但命令始终完成。我需要知道他们是否以错误结束。


感谢您的帮助

您可以通过检查$?,查看上一个命令是否失败?。因此,如果您正在编写configure/make/make安装脚本,您将执行以下操作(我将使用configure作为示例):


您可以检查
$?
值吗?您是否尝试过
设置-e
?或者,如果您只想在某些命令中使用它:
command | | exit$?
。Erik,当您说命令失败时,也就是说命令没有成功完成,但它完成了,或者由于某种原因,命令在执行过程中失败了?很抱歉,我花了一段时间才回复您。我应该说,您可以检查上一个命令的退出代码,看看它是否失败。标准是成功时返回0,失败时返回非零。因此,在退出之前,您可以采取任何行动或编写您选择的任何消息。我发现使用相同的错误代码(exit$rc)继续并退出是一种非常好的做法
./configure --install-prefix=/usr/local/
rc=$?
if [ $rc != 0 ]; then
  # Output any messages or take any actions because the last 
  # command failed, then exit with same code.

  exit $rc
fi