직렬 포트를 통해 Linux 시스템과 상호 작용하는 프로그램을 작성하고 있습니다. 주 통신 채널로 pexpect.spawn을 다음과 같이 사용하고 있습니다.주어진 문자열로 각 STDERR을 미리 보류 할 수 있습니까?
proc = pexpect.spawn("cu dir -l /dev/ttyUSB0 -s 115200", logfile = *someFile*)
그리고 sendline ("cmd") 메서드로 컴퓨터에 명령을 보내고 각 세션이 끝날 때 로그 파일을 구문 분석하여 명령이 어떻게 작동하는지 확인합니다.
로그 파일에서 stdout 및 stderr로 인쇄 된 줄을 구분할 수 있기를 원하지만 현재는 그렇게 할 방법이 없습니다. stderr에 인쇄 된 각 행 앞에 주어진 문자열을 전역으로 추가하는 방법입니까?
나는 pexpect.spawn이 제공하는 로그 파일을 통해 그것들을 '캡처'합니다. 명령은 다른 컴퓨터에서 실행되기 때문에 두 컴퓨터간에 파일을 전송할 수 없기 때문에 파일에 저장할 수 없습니다. – EagerToLearn
기다려, cu 또는 명령의 인스턴스에서 stdout/stderr을 캡처하려고합니까? 원격 리눅스 머신에서 실행 되나요? – Perry
원격 리눅스 컴퓨터에서 실행중인 명령에서 내 질문에 명확하지 않은 경우 미안합니다 – EagerToLearn