服务端程序
[root@B_db92 ~]# cat test.py
#!/usr/bin/python
import socket
import commands
HOST='10.0.7.92'
PORT=50007
s= socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((HOST,PORT))
s.listen(1)
while 1:
conn,addr=s.accept()
print'Connectedby',addr
while 1:
data=conn.recv(1024)
cmd_status,cmd_result=commands.getstatusoutput(data)
if len(cmd_result.strip()) ==0:
conn.sendall('Done.')
else:
conn.sendall(cmd_result)
conn.close()
客户端程序
[root@dsk_mooc93 ~]# cat client.py
#!/usr/bin/python
import socket
HOST='10.0.7.92'
PORT=50007
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((HOST,PORT))
while 1:
cmd=raw_input("Please input cmd:")
s.sendall(cmd)
data=s.recv(1024)
print data
s.close()
本文介绍了一个使用 Python 的 Socket 库实现的简单服务端和客户端程序,服务端能够接收来自客户端的命令并执行,然后将结果返回给客户端。此程序展示了基本的网络通信原理及如何利用 Python 实现远程命令执行。
922

被折叠的 条评论
为什么被折叠?



