일부 리눅스 명령을 실행하려면 pexpect를 사용하고 있습니다. 명령 내에서 변수를 사용하는 데 문제가 있습니다. 예 :인수로 파이썬 변수
first_dir="/opt/dirA"
second_dir="/opt/dirB"
내가 dirB에 dirA을 복사하려면 :
cmd="cp -rp " +first_dir +" " +second_dir
print("cmd is ",cmd)
s.sendline(cmd)
그것은 오류주고 : 후 대상 파일 피연산자를 누락`/ 옵션/dirA ' 그러나 인쇄 출력은 오른쪽 (CP입니다 - rp/opt/dirA/opt/dirB) 및 다음 명령이 작동합니다. s.sendline ("cp -rp/opt/dirA/opt/dirB")
내가 잘못하고있는 것을 누군가 볼 수 있습니까?
무엇이'repr (cmd)'입니까? Btw. '+'대신 문자열 형식을 사용하십시오. – Daniel
repr (cmd)는 저에게 'cp -rp/opt/dirA/opt/dirB \ x1b] 0을 제공합니다 root @ myserver : ~ \ x07/opt/dirB –
만약 그 모든 것들이'repr'에 있다면, 어떻게 든 커서 이동 컨트롤 코드를 스크립트에 편집했습니다. 수정 사항은 스크립트를 수정할 수있는 적절한 편집기에서 스크립트를 편집하는 것입니다. 처음에 잘못 편집 한 방법을 다시 확인하지 않으려 고 할지도 모릅니다. 내 생각 엔'cat> script.py' 같은 것을 한 것입니까? – abarnert