C/S方法,客户端发送一条命令,服务端返回命令执行结果
服务端程序:
import socket
server = socket.socket()
server.bind(('172.25.254.42',9006))
server.listen()
print("服务端已经启动9006端口")
sock0bj, address = server.accept()
while True:
send_data = input("server>:")
sock0bj.send(send_data.encode('utf-8'))
if send_data == 'quit':
break
recv_data = sock0bj.recv(1024).decode('utf-8')
print("client>:%s" %(recv_data))
if recv_data == 'quit':
break
sock0bj.close()
server.close()
客户端程序:
import socket
import os
Host = '172.25.254.42'
Port = 9006
client = socket.socket()
client.connect((Host,Port))
while True:
recv_data = client.recv(1024).decode('utf-8')
print("server:>%s" % (recv_data))
if recv_data:
a = os.popen(recv_data).read()
send_data = a
client.send(send_data.encode('utf-8'))
elif recv_data == 'quit':
break
client.close()