如何为if条件添加循环?

时间:2017-04-18 12:27:23

标签: bash if-statement while-loop conditional

我正在使用需要启发的shell脚本。

这是我的脚本结构:

if [ condition 1 ] 
statement; 
exit; 
else if [ condition 2 ]   
statement;
exit;
else
sleep 30 
fi

我想修改这个脚本,如果条件2为假,它将转到else并等待一段时间使条件2变为真,并在30秒后再次尝试。这个过程应该运行5次。如果仍然是condtion 2是假的脚本应该退出。

由于

1 个答案:

答案 0 :(得分:1)

下面的shell脚本可能会按照您的意愿运行

#!/bin/sh

if [ condition 1 ] 
  statement; 
  exit; 
fi

i=1
while [ $i -lt 5 ]
do
  if [ condition 2 ]   
    statement;
    exit;
  else
    sleep 30
    true $(( i++ )) 
  fi
done