ポート 1521 が server1 と server2 で開かれるのを待ってから、start_apps.sh スクリプトを実行するスクリプト ファイルに次の行があります。
ポート1521がサーバー(server1またはserver2)で開かれるのを待ってからstart_apps.shスクリプトを実行するようにこの設定を変更するにはどうすればよいですか。
until (nc -z server1 1521); do echo "$(date +'%Y-%m-%d %T') wait for server1";done
until (nc -z server2 1521); do echo "$(date +'%Y-%m-%d %T') wait for server2"; done
start_apps.sh
答え1
非遮断チェックを実行するループを使用します。それは次のとおりです。
#!/bin/sh
while [ 1 ]; do
if [ $(nc -z server1 1521) ] || [ $(nc -z server2 1521) ]; then
break
fi
sleep 1 # if desired
done
start_apps.sh
両方の条件のいずれかが満たされるまでループが実行されます。