[Linux] shell でコマンドが成功するまでリトライするサンプルコード

Tadashi Shigeoka ·  Thu, May 19, 2022

Linux /bin/sh にてコマンドが成功するまでリトライするサンプルコードをご紹介します。

Linux | リナックス

前提条件 Debian + /bin/sh

  • OS: Debian Buster
  • Amazon ECS Exec でインタラクティブな /bin/sh コマンドを実行

コマンドが成功するまでリトライするサンプルコード /bin/sh

NEXT_WAIT_TIME=0
COMMAND_STATUS=1
while [ $COMMAND_STATUS -ne 0 ]; do
  command # exec your command
  COMMAND_STATUS=$?
  sleep $NEXT_WAIT_TIME
  NEXT_WAIT_TIME=$((NEXT_WAIT_TIME+1))
  echo $NEXT_WAIT_TIME
done

以上、Linux /bin/sh にて、コマンドが成功するまでリトライしたい、現場からお送りしました。

参考情報