我在 shell 脚本中执行了一个命令,该命令以“成功完成”或“失败完成”结尾。我如何在脚本中读取它并将其用于if
和else
条件?
答案1
尝试这个:
your_command | \
tee >(sleep; [[ `tail -n1` =~ 'completed successfully' ]] && echo OK || echo NOTOK)
解释:
tee
:将your_command
输出分为两个 (i)>(...)
和 (ii)stdout
sleep
:(可选)等待1秒,改成1s
你需要的tail -n1
: 提取最后一行=~
:匹配测试;将测试更改为您需要的内容echo OK
,echo NOTOK
:仅举例,请改成你需要的