我想使用 telnet 连接到系统并检查响应中是否有
foreign
。
我正在努力...
echo quit | telnet 192.0.0.1 443 | grep -q "foreign"
连接成功意味着在字符串中找到了“foreign”。这是因为在输出中我得到类似...
Trying 192.0.0.1
Connected to 192.0.0.1
Connection closed by foreign host
但是如果我检查
echo $?
我会得到一个1
表明它找不到这个词。我的猜测是这是由于多行输出造成的。
有没有办法处理这个问题,以便我从
0
得到 echo $?
?
必须通过终端完成 - 没有脚本等
我会做什么:
{ sleep 1; echo quit; } | telnet 192.0.0.1 443 2>&1 | grep -q "foreign"