如何在 shell 脚本中读取上一个命令的输出?

如何在 shell 脚本中读取上一个命令的输出?

我在 shell 脚本中执行了一个命令,该命令以“成功完成”或“失败完成”结尾。我如何在脚本中读取它并将其用于ifelse条件?

答案1

尝试这个:

your_command | \
tee >(sleep; [[ `tail -n1` =~ 'completed successfully' ]] && echo OK || echo NOTOK)

解释:

  1. tee:将your_command输出分为两个 (i)>(...)和 (ii)stdout
  2. sleep:(可选)等待1秒,改成1s你需要的
  3. tail -n1: 提取最后一行
  4. =~:匹配测试;将测试更改为您需要的内容
  5. echo OKecho NOTOK:仅举例,请改成你需要的

相关内容