使用curl
telnet调用从指定主机运行脚本的各种主机自动执行telnet连接。
然而,当我们知道telnet一旦我们获得任何主机的连接状态时,我们必须传递一个转义字符来终止telnet会话,但是在bash脚本中我需要在我们获得Connected / Refused响应后立即终止会话目标端点或运行telnet会话几秒钟后。
通过Curl调用检查telnet连接的PFB脚本,所以我需要curl
,我们可以在得到响应或终止会话后立即终止curl
中的telnet会话在几毫秒/秒内。
代码:
#!/bin/bash
HOSTS='LPDOSPUT00100 LPDOSPUT00101'
for S in ${HOSTS}
do
echo "Checking Connectivity From Host : ${S}"
echo ""
ssh -q apigee@${S} "curl -v telnet://${TargetEndPoint}:${Port}"
done
答案 0 :(得分:0)
您可以在timeout
命令中运行它,使其在一段时间后终止。
ssh -q apigee@"$S" "timeout 5s curl -v telnet://${TargetEndPoint}:${Port}"
如果它自己没有退出,会在5秒后终止它。
虽然curl
或许nc
不适合这份工作。您是否考虑过使用ssh -q apigee@"$S" "nc -z ${TargetEndPoint} $Port"
?
/IdentityAction/login/
可能会做你想做的事。