Сервер Ubuntu или Debian неправильно используют Python Pexpect - PullRequest
0 голосов
/ 24 сентября 2018

это работает на рабочем столе Ubuntu или Centos правильно, но это на сервере Ubuntu или Debian неправильно.

// python code

import pexpect 
import os


def runCode(x):
    data = {}
    mess = ""
    try:
        x.expect(['.+', pexpect.EOF], timeout=5)
        mess += str(x.after,"utf-8")
        print(mess)
        # x.expect(['.+', pexpect.EOF], timeout=5)
        if x.eof():
            print("end")
            isEnd = "true"
        else:
            print("No_end1")
            isEnd = "false"
    except Exception as e:
        print(e)
        print("No_end2")
        isEnd = "false"
    print(mess)
    data["data"] = mess
    data["isEnd"] = isEnd
    return data

x = pexpect.spawn("./a.out")
data = runCode(x)
print("........")
print(data)

// C code

#include <stdio.h>
int main(){
printf("hello world\n");
printf("hello world\n");
}

Код, выполняемый в другой системе, отличается.

это на рабочем столе Ubuntu

{'data': 'hello world\r\nhello world\r\n', 'isEnd': 'false'}

это на сервере Ubuntu

{'data': 'hello world\r\n', 'isEnd': 'false'}

вот код, который я хочу, чтобы первый результат, но сервер дает второй результат.

...