服务端

# 服务器收到命令后执行,无论执行是否成功,无论执行几遍,都将执行结果返回给客户端
import subprocess
import socket

server = socket.socket()
server.bind(('127.0.0.1', 8888))

server.listen()

socket_obj, address = server.accept()

while True:
    cmd = socket_obj.recv(1024).decode('utf8')

    # 执行cmd命令
    obj = subprocess.Popen(
        # cmd命令
        cmd,
        # Shell = True
        shell=True,
        # 返回正确结果参数
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE
    )
    # 获取执行cmd命令的二进制数据结果
    res = obj.stdout.read() + obj.stderr.read()

    socket_obj.send(res)

客户端

import socket

client = socket.socket()

client.connect(('127.0.0.1', 8888))

while True:
    cmd = input('请输入cmd命令:')

    client.send(cmd.encode('utf8'))

    # 解码服务端执行cmd命令后的二进制数据结果
    res = client.recv(1024).decode('gbk')

    print(res)