当前位置:  开发笔记 > 编程语言 > 正文

如何使用Bash制作Echo服务器?

如何解决《如何使用Bash制作Echo服务器?》经验,为你挑选了3个好方法。

如何使用nc,echo,xargs等工具编写echo服务器bash脚本,这些工具能够同时处理来自多个客户端的请求,每个客户端都具有持久连接?

我到目前为止最好的是

nc -l -p 2000 -c 'xargs -n1 echo'

但它只允许一个连接.



1> David Costa..:

如果您使用ncat而不是nc,您的命令行可以正常使用多个连接但(如您所指出的)没有-p.

ncat -l 2000 -k -c 'xargs -n1 echo'

ncat可从http://nmap.org/ncat/获得.

PS与原始的Hobbit的netcat(nc)-c标志不受支持.

更新:现在需要-k( - keep-open)来处理多个连接.


xargs -n1 echo通过空格将行分开,但是xargs -l1 echo使行保持完整。

2> douyw..:

这里有些例子.ncat简单的服务

TCP echo服务器

ncat -l 2000 --keep-open --exec "/bin/cat"

UDP echo服务器

ncat -l 2000 --keep-open --udp --exec "/bin/cat"



3> Caesar..:

如果ncat不是一个选项,socat也会工作:

socat TCP4-LISTEN:2000,fork EXEC:cat

fork是必要的,因此可以接受多个连接.添加reuseaddrTCP4-LISTEN可能很方便.

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有