这是网络编程的一小步,却是我的一大步

1.整理TCP三次握手、四次挥手图

首先是三次握手:

​ 1首先客户端发送了一个请求给服务端

​ 2服务端处于接收状态,且接受到了请求,因此返回了一个确认给客户端,同时也发送了一个请求给服务端

​ 3客户端收到了确认和请求,于是二者开始正式建交

四次挥手:

​ 1.客户端发了一个掐断连接的请求给服务器

​ 2.服务器接受到了请求,并确认是否还有未执行的任务,无论执行多少倍都会传给客户端

​ 3.服务器进入关闭等待状态

​ 4.客户端也进入time_wait状态,可以使其再内存中消散

2.基于TCP开发一款远程CMD程序 客户端连接服务器后,可以向服务器发送命令 服务器收到命令后执行,无论执行是否成功,无论执行几遍,都将执行结果返回给客户端 注意: 执行系统指令使用subprocess模块完成.

服务端

import subprocess
import re
import socket
server=socket.socket()

server.bind(
    ('127.0.0.1',9527)#用于寻找服务端
)
server.listen(0)#只有一个人能上我


conn,addr=server.accept()
print(addr)

while True:
    try:
        data=conn.recv(1024).decode('utf8')
        print(data)
        # back_list=[]
        back=subprocess.check_output(data,shell=True)
        buck=back.strip()
        # back_list.append(back.split)
        # back=back.strip()
        print(buck)


    except Exception as e:
        print(e)
        break
conn.close()

客户端

import subprocess
import socket
client=socket.socket()

client.connect(
    ('127.0.0.1',9527)#用于寻找服务端
)
while True:
    send_msg=input('输入命令给服务器:')
    client.send(send_msg.encode('utf8'))
    if send_msg=='q':
        break
    data=client.recv(1024).decode('utf8')
    print(data)
client.close()
原文地址:https://www.cnblogs.com/jimGraymane/p/11694421.html