写一个shell脚本执行telnet 127.0.0.1 12362611511311351如果输出内容有bad port则判断telnet服务正常
时间: 2024-03-27 19:41:30 浏览: 209
用C语言编写的telnet源码(用来测试某端口是否开着)
5星 · 资源好评率100%
好的,下面是一个简单的shell脚本,可以执行telnet命令,并判断输出内容是否包含"bad port",以此来判断telnet服务是否正常:
```
#!/bin/bash
output=$(echo "quit" | telnet 127.0.0.1 12362611511311351 2>&1)
if [[ $output == *"bad port"* ]]; then
echo "telnet服务正常"
else
echo "telnet服务异常"
fi
```
脚本的执行流程如下:
1. 使用echo命令发送"quit"字符串到127.0.0.1的12362611511311351端口,这相当于使用telnet连接到指定端口并立即退出。
2. 将telnet命令的输出重定向到变量$output中。
3. 使用字符串匹配判断$output的内容是否包含"bad port",如果是,则输出"telnet服务正常",否则输出"telnet服务异常"。
注意,为了避免telnet命令在连接失败时阻塞脚本,我们使用了echo命令发送"quit"字符串,并将telnet命令的输出重定向到变量中。同时,为了避免telnet命令输出到标准错误流中,我们使用了2>&1将标准错误流重定向到标准输出流中。
阅读全文