暂停循环,直到grep模式从命令满足条件(bash脚本)

时间:2015-12-15 11:17:16

标签: bash if-statement for-loop grep

我想将多个作业发送到远程计算机。因此,我编写了一个for循环,它迭代i个由多个子命令组成的作业。我需要暂停后续迭代,直到执行某个子命令并且作业实际在远程计算机上运行。 因此,我们的想法是检查字符串"PEND"是否出现在远程计算机上的命令输出中。我想在"PEND"更改为"RUN"时继续使用for循环。我不知道if语句是否适合在这里使用。使用sleep的固定等待时间不会起作用,因为从PEND到RUN的状态变化非常不规律。 附加信息:子命令包括可执行文件的编译。

错误的伪代码:

for i in {1..10}
do
    subcommands
    ...
    if [[ jobs | grep "PEND" == TRUE ]]; then sleep 1
    fi
done

0 个答案:

没有答案