私は次のシェルスクリプトを使用して、csvファイルからipとportのセットをチェックしています。しかし、それは常にwhileループを壊し、最初の結果しか表示しません。しかし、どのようにエラーなしでスクリプトは最後の行にも到達します。どのようにループの問題を解決するには、telnetで?シェルスクリプトtelnet最初の時点でwhileループをスキップ
echo "starts"
while read p; do
if [ ! -z "$p" -a "$p" != " " ]; then
IP=`echo $p | cut -d',' -f1`
PORT=`echo $p | cut -d',' -f2`
TELNET_STR=`telnet "$IP" "$PORT" | grep "Connected"`
if [ ! -z "$TELNET_STR" -a "$TELNET_STR" != " " ]; then
echo '[success]:'$IP':'$PORT
else
echo '[failed]:'$IP':'$PORT
fi
fi
done <telnet.csv
echo "ends"
telnet.csv
234.253.245.23,80,1
234.089.108.216,8080,1
234.23.23.216,21,1
shellcheck ... http://www.shellcheck.net/ –