python log模块导致系统挂起_Python clientserver脚本挂起,直到我按[enter]

我有一个使用套接字的Python基本客户机-服务器脚本。服务器绑定到特定端口并等待客户端连接。当客户机连接时,它们会收到一个原始的“输入”提示符,该提示符将输入的命令发送到服务器上的子程序,并通过管道将输出返回给客户机。

有时当我从客户机执行命令时,输出将挂起,直到我按[enter]键时才会显示原始输入提示。

一开始我认为这可能是一个缓冲区问题,但当我使用输出较小的命令时,就会发生这种情况,比如“clear”或“ls”等等

客户代码:import os, sys

import socket

from base64 import *

import time

try:

HOST = sys.argv[1]

PORT = int(sys.argv[2])

except IndexError:

print("You must specify a host IP address and port number!")

print("usage: ./handler_client.py 192.168.1.4 4444")

sys.exit()

socksize = 4096

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

try:

server.connect((HOST, PORT))

print("[+] Connection established!")

print("[+] Type ':help' to view commands.")

except:

print("[!] Connection error!")

sys.exit(2)

while True:

data = server.recv(socksize)

cmd = raw_input(data)

server.sendall(str(cmd))

server.close()

服务器代码:

^{pr2}$

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值