如何检查一行中返回的值是否为真?

如何检查一行中返回的值是否为真?

我在 bash 中运行以下命令:

yarn config get workspaces-experimental

返回以下内容:

true\n
\n

即“真”或“假”后跟两条结束线。我想采用这个进程,验证其标准输出并将其通过管道传输到另一个进程,该进程在结果不“true”时返回退出代码。

我怎样才能做到这一点?使用竖线 (|)?

答案1

使用 时,仅当文本文字匹配bash时才会生成退出状态代码 0(成功) 。true在其他情况下它将返回非零(失败)

[[ $(yarn config get workspaces-experimental) == true ]]

您可以直接在条件语句中使用它,例如

if [[ $(yarn config get workspaces-experimental) == true ]]
then
    echo "Relax, everything is fine"
fi

答案2

可以通过管道传输xargs并使用test

yarn config get workspaces-experimental | xargs test true =

相关内容