linux 网络编程 要实现一个简单的telnet 服务端怎么把执行的结果发给客户端
客户端和服务端可以正常通信服务端收到客户端的命令后调用fork()和execvp()k可以正常执行命令,但是执行结果是输出在服务端,我怎么把这些结果输出到服务终端的结果发...
客户端和服务端可以正常通信 服务端收到客户端的命令后 调用fork()和execvp()k可以正常执行命令,但是执行结果是输出在服务端,我怎么把这些结果输出到服务终端的结果发送给客户端呢?是不是我的思路有什么不对的地方? 希望高手帮助
展开
1个回答
展开全部
再把结果发送给客户就行了嘛...
用tcp来发送执行结果和命令。
用tcp来发送执行结果和命令。
追问
但是这些结果直接输出到服务端的终端了啊 我怎么把这些数据发送到客服端呢?
追答
你能不能说下你这个程序的执行过程呢..
是不是直接把telnet这个可执行文件拿来exec了还是怎么回事呢...
用 dup2 输出重定向一下,在你的程序中,把stdout给定向到一个临时文件,每次收到一个命令(这个你程序应该能判断何时受到命令吧),命令执行完了,就去读文件,并发送出去,发送目标就是接受命令的来源(这个你应该能知道)。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询