bash-如何将结果分配给0或1?

时间:2018-09-10 08:57:17

标签: bash shell amazon-ec2

如果要获取成功的json结果为0,失败的则为1,我想分配json结果。

结果如下所示:

[root@jenkins qemu-server]# aws elb describe-instance-health --profile test --load-balancer-name classic-balance-test
{
    "InstanceStates": [
        {
            "InstanceId": "i-05414ddade7f312ff",
            "ReasonCode": "Instance",
            "State": "OutOfService",
            "Description": "Instance is in stopped state."
        },
        {
            "InstanceId": "i-0ccf638d2cd59bc73",
            "ReasonCode": "Instance",
            "State": "OutOfService",
            "Description": "Instance is in stopped state."
        }
    ]
}

结果失败,如下所示:

[root@jenkins qemu-server]# aws elb describe-instance-health --profile test --load-balancer-name classic-balance-test1

An error occurred (LoadBalancerNotFound) when calling the DescribeInstanceHealth operation: There is no ACTIVE Load Balancer named 'classic-balance-test1'

1 个答案:

答案 0 :(得分:1)

您可能想尝试运行echo $?,它将打印出最后执行的状态代码。

所以您可以像results=$(echo $?)

那样为该命令分配一个变量。

当您echo $results时,将获得命令运行的状态代码

来自official documentation

  

这些是执行结束时返回的以下返回代码   CLI命令:

     

0-命令成功。 [...]

     

[...]

     

要确定命令的返回码,请运行以下权限   运行CLI命令后。请注意,这仅适用于POSIX   系统:

$ echo $?