shell脚本向端口发送消息并使用netcat监听
时间:2020-04-11 18:34 来源:linux.it.net.cn 作者:IT
下载并安装netcat
yum install -y nc
开启监听10001端口
nc -l 10001,必须先开启监听,再向端口发送消息,否则会有如下报错
sentMessageToPort.sh: connect: Connection refused
sentMessageToPort.sh: line 12: /dev/tcp/hadoop03/10001: Connection refused
shell脚本向端口发消息
#!/bin/bash
# ${}:对变量的替换,同$var。
# $():对命令的替换,同``(反引号)。
# $(()):对内部内容进行整数运算$((var1*var2))。或将其他进制转换为十进制$((N#var)),其中N为进制。
# (())重定义变量值
# 重定向到文件 exec 3<>/home/hadoop/shScript/xxx
# 重定向到端口 exec 3<>/dev/"tcp"/hadoop03/10001
function sendmsg(){
exec 3<>/dev/"tcp"/hadoop03/10001
num=0;
while (($num < 100))
do
echo "向端口发送数字$num"
echo $num>&3
(( num += 1 ))
sleep 1
done
exec 3<&-
}
echo "---start---"
sendmsg
echo "----end----"
sh sentMessageToPort.sh
发送端
接收端
nc -l 10001
完美了,可以用于简单的测试,比如flume数据采集
(责任编辑:IT)
下载并安装netcat yum install -y nc 开启监听10001端口 nc -l 10001,必须先开启监听,再向端口发送消息,否则会有如下报错 sentMessageToPort.sh: connect: Connection refused sentMessageToPort.sh: line 12: /dev/tcp/hadoop03/10001: Connection refused shell脚本向端口发消息 #!/bin/bash # ${}:对变量的替换,同$var。 # $():对命令的替换,同``(反引号)。 # $(()):对内部内容进行整数运算$((var1*var2))。或将其他进制转换为十进制$((N#var)),其中N为进制。 # (())重定义变量值 # 重定向到文件 exec 3<>/home/hadoop/shScript/xxx # 重定向到端口 exec 3<>/dev/"tcp"/hadoop03/10001 function sendmsg(){ exec 3<>/dev/"tcp"/hadoop03/10001 num=0; while (($num < 100)) do echo "向端口发送数字$num" echo $num>&3 (( num += 1 )) sleep 1 done exec 3<&- } echo "---start---" sendmsg echo "----end----" sh sentMessageToPort.sh 发送端 接收端 nc -l 10001 完美了,可以用于简单的测试,比如flume数据采集 (责任编辑:IT) |