当前位置: 首页 > 知识库问答 >
问题:

shell中返回退出代码的2个数字的非零值

公冶和豫
2023-03-14

这就是我的情况。

我希望能够退出具有非零值的RC/RC1。当执行以下代码时,如果RC为0,则返回带有非零退出代码的RC1(最佳情况),如果RC为非零且RC1也非零,则我将错过RC1的退出代码(意味着我将无法使用RC1的退出代码)。如何发送正确的退出代码?本质上,我想通过电子邮件发送非零变量

if [ $RC -ne 0 ] || [ $RC1 -ne 0 ]; then
        if [ $RC -ne 0 ]; then
        exit $RC
        else
        exit $RC1
fi

共有1个答案

巢皓君
2023-03-14

您想同时返回两个退出代码吗?我猜,当你开车的时候,你也想同时坐在前排和后排座位上。你可以,但是你需要一辆特别的车。以下是制造这种汽车的两个想法:

>

  • 如果您知道在此上下文中,每个退出代码必须是一个1位数字,那么您可以返回类似于$((RC*10rc2))-我在这里使用bash/zsh语法,因为您没有说明要使用哪个shell。如有必要,您必须使其适应您的外壳。

    如果其中至少有一个为非零,则可以通过将“$RC1$RC2”之类的内容打印到stderr来调整脚本的界面,即:

    if [ $RC -ne 0 ] || [ $RC1 -ne 0 ]; then
      echo "$RC $RC1" 1>&2
      exit 1
    else
      exit 0
    fi
    

    在这两种情况下,调用过程都必须分解组合的退出代码以返回原始代码。

  •  类似资料:
    • 我试图在AmazonSageMaker中使用DockerFile构建一个映像,但是我得到了以下错误。 回溯(上次调用): 文件“/usr/bin/pip3”,第9行,从pip导入主导入错误:无法导入名称“main”命令“/bin/sh-c pip3 install--升级pip setuptools wheel 我的DockerFile如下所示

    • 当我创建新的django项目在py魅力我有错误输入图片描述在这里 救救我求你了

    • 我正试图从我的docker文件创建一个docker图像,该文件具有以下内容: 失败,出现以下错误: 我不知道这里出了什么问题。

    • 我想运行"sudo whoami"命令在PHP脚本。 我已经添加了下一行到 /etc/sudoers Apache ALL=(ALL)NOPASSWD:/usr/bin/whoami 然后执行脚本 $result为空$return_var==1 终端命令 返回“root”。 PHP 5.6.38 CentOS 7.5。1804

    • 问题内容: Docker命令构建 问题答案: 问题是github.com/tidwall/tile38/client应该是github.com/tidwall/tile38/pkg/client 现在解决了 @Albin谢谢指出。

    • 问题内容: 任何人都可以通过以下错误帮助我。当我清理项目时,它不会显示任何错误,但是每次我尝试运行时,都会收到此消息。 错误:任务’:app:dexDebug’的执行失败。 com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程’命令’C:\ Program Files