サーバー間の接続が正しく機能するかどうかを示す簡単なスクリプトがあります。問題は、確認するサーバーが複数あり、1つずつ確認したくないということです。サーバーのリストを追加する方が良いでしょう。ファイルとスクリプトは 。誰もがループでスクリプトを拡張するのに役立ちますか?
SERVER=$1
PORT=$2
nc -z -v -G5 $SERVER $PORT &> /dev/null
result1=$?
if [ "$result1" != 0 ]; then
echo port $PORT is closed on $SERVER
else
echo port $PORT is open on $SERVER
fi
答え1
これはあなたが言うのですか?
サーバー.txt
[hostname or IP 1] [port 1]
[hostname or IP 2] [port 2]
[hostname or IP 3] [port 3]
[hostname or IP 4] [port 4]
[hostname or IP 5] [port 5]
#!/usr/bin/bash
while IFS=" " read -r SERVER PORT; do
nc -z -v -G5 $SERVER $PORT &> /dev/null
result1=$?
if [ "$result1" != 0 ]; then
echo "port $PORT is closed on $SERVER"
else
echo "port $PORT is open on $SERVER"
fi
done < server.txt