python基础之socket编程-------基于tcp的套接字实现远程执行命令的操作

远程实现cmd功能:

 

 1 import socket
 2 import subprocess
 3 phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
 4 phone.bind(("127.0.0.1",8080))
 5 phone.listen(5)
 6 print("等待命令....")
 7 while True:
 8     conn,addr=phone.accept()
 9     while True:
10         try:
11             date=conn.recv(1024)
12             s=date.decode("utf8")
13             res=subprocess.Popen("%s"%(s),shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE,)
14             re1=res.stdout.read()
15             re2=res.stderr.read()
16             if len(re1)==0 and len(re2)==0:
17                 conn.send("此命令无显示信息。".encode("gbk"))
18             else:
19                 conn.send(re1)
20                 conn.send(re2)
21         except Exception:
22             break
23 conn.close()
24 phone.close()
真正执行命令的服务端

 

 1 import socket
 2 phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
 3 phone.connect(("127.0.0.1",8080))
 4 while True:
 5     msg=input("请输入你的CMD命令:")
 6     if not msg:continue
 7     phone.send(msg.encode("utf8"))
 8     data=phone.recv(1024)
 9     print(data.decode("gbk"))
10 phone.close()
远程控制客户端

 

posted @ 2017-05-03 23:52  im777  阅读(171)  评论(0编辑  收藏  举报