SSH でログインできるまでblockするスニペット

  • 9
    いいね
  • 1
    コメント
この記事は最終更新日から1年以上が経過しています。

EC2のインスタンスが立ち上がるまで待って何かを実行するときなどに。

-o StrictHostKeyChecking=no の判断は自己責任で。

CHECK_COMMAND="ssh -o StrictHostKeyChecking=no -o ConnectTimeout=1 $SERVER -q -T exit"

until
    `$CHECK_COMMAND`
    [ $? -eq 0 ]
do
    :
done

一定回数でabortとかは要件に応じて追加してください。

(追加) nc版

 until nc -w 1 $SERVER $PORT < /dev/null; do sleep 1; done