pexpect를 사용하여 원격 시스템을 제어하는 매우 간단한 프로그램을 작성하려고합니다. 그러나 원격 시스템은 전송 된 명령에 반응하지 않습니다. , 지금까지의 내가 이해, 명령이 성공적으로 실행되는시스템이 pexpect 명령에 응답하지 않음
0
10
그래서하지만 대상 시스템, 즉 foo는 아무런 결과가 없습니다 :
여기#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import pexpect
import sys
child = pexpect.spawn('telnet 192.168.2.81 24')
res = child.expect('/ # ')
print(res)
res = child.sendline('touch foo')
print(res)
이 출력됩니다 : 여기
는 소스 코드 파일이 작성되지 않았습니다.아무도 도와 줄 수 있습니까?
감사합니다! 'child.sendline ('exit')'과'child.expect (pexpect.EOF)'가 작동했습니다. 'child.logfile_read = sys.stdout'은 어떨까요? 'TypeError : write() 인수는 바이트가 아닌 str이어야합니다.'하지만 작동하더라도 아무런 이익도 보지 않습니다. 이를 무시하고 파일 끝과 관련된 권장 사항 만 사용할 수 있습니다. –
이 이것을 발견했습니다 : https://stackoverflow.com/questions/35330424/expect-in-python3-is-throwing-error-as-must-be-in-str-not-bytes. 내 대답이 업데이트되었습니다. – pynexj