同じIPが同じポートに接続されているLinuxサーバに接続することを監視しようとしています。特定のIPアドレスを監視して、2回存在しない場合にのみ警告することは可能ですか?シェルスクリプトモニタ同じIPを持つ複数の接続
例:
のnetstat -an | grepを000
101.101.101.101:2000 ESTABLISHED
101.101.101.101:2000 ESTABLISHED
101.101.101.102:3000 ESTABLISHED
101.101.101.102:3000 ESTABLISHED
私は101.101.101.101または101.101.102は関係なく、ポートの2回、それぞれを終了していない場合に警告したいと思います。
マイスクリプト:
connections=('101.101.101.101' '101.101.101.102')
running=($(netstat -an |grep 000 |awk '{print $1}'))
non_running=()
for process_name in ${connections[@]}; do
if [[ "${running[*]}" == *$process_name* ]]; then
echo "$process_name is running"
else
echo "$process_name is not running"
fi
done
ありがとう@ RavinderSingh13あなたの提案を使用しましたが、両方のIPアドレスがダウンしている場合は、いずれかの警告のみが電子メールアラートに表示されます。私は両方がダウンしている場合両方に警告する方法を把握することができませんでした。また、私は追加する必要があります、最初のIPは2回存在する必要があり、2番目のIPは4回存在する必要があります。 10.101.101.101が2つ未満であればアラートを、4つ未満の場合に10.101.101.102のアラートが存在するかどうかを警告する簡単なソリューションはありますか?ありがとう!! – connollyc4
@ connollyc4、ここで私がカウント<2を述べた条件、あなたはカウント<4に変更することができます。また、それは私のために働いた私は私のIPのためにテストしたときに2つの電子メールを持っていることを確認してくださいあなたのIPは2よりも少ないカウントを持っていることを確認してください。 – RavinderSingh13