zoukankan      html  css  js  c++  java
  • socket


    import socket ,os,time
    server = socket.socket()
    server.bind(('localhost',9999) )

    server.listen()

    while True:
    conn, addr = server.accept()
    print("new conn:",addr)
    while True:
    print("等待新指令")
    data = conn.recv(1024)
    if not data:
    print("客户端已断开")
    break
    print("执行指令:",data)
    cmd_res = os.popen(data.decode()).read() #接受字符串,执行结果也是字符串
    print("before send",len(cmd_res))
    if len(cmd_res) ==0:
    cmd_res = "cmd has no output..."

    conn.send( str(len(cmd_res.encode())).encode("utf-8") ) #先发大小给客户端
    #time.sleep(0.5)
    #连续两个send会黏包,可以增加一个接受确认的选项,对方收到后发送确认返回
    conn.send(cmd_res.encode("utf-8"))
    print("send done")
    os.path.isfile()
    os.stat("sock")
    server.close()

  • 相关阅读:
    java
    java
    java
    java
    java
    java
    java
    java
    sed命令的用法
    linux系统产生随机数的6种方法
  • 原文地址:https://www.cnblogs.com/smlie/p/8531737.html
Copyright © 2011-2022 走看看