나는 유트 라인을 잡고 쉘 스크립트에이 문자열을줍니다. 직렬 입력 줄을 잡고 쉘 스크립트로 옮깁니다
#!/usr/bin/env python
import os
import serial
ser = serial.Serial('/dev/ttyAMA0', 4800)
while True :
try:
state=ser.readline()
print(state)
except:
pass
그래서, "상태"이제 쉘 스크립트에 제공한다, 같은 :
myscript.sh "This is the serial input..."
하지만이 어떻게 할 수 있습니까?
print(os.system('myscript.sh ').ser.readline())
이 작동하지 않습니다.
'os.system()'은'print'하고 싶은 것을 돌려주지 않습니다. 하위 프로세스가 표준 출력에 아무 것도 인쇄하지 않으면 그 곳으로 가고 Python 스크립트는 알 수 없습니다. 하위 프로세스가 인쇄하는 것을 캡처하려면,'check_output' 메소드 (Python 2.7+) – tripleee