我試圖抓住uart-line並將此字符串賦予shell腳本;抓住串行輸入行並將它們移動到shell腳本
#!/usr/bin/env python
import os
import serial
ser = serial.Serial('/dev/ttyAMA0', 4800)
while True :
try:
state=ser.readline()
print(state)
except:
pass
所以,「狀態」應該給一個shell腳本現在, 像:myscript.sh "This is the serial input..."
但我怎麼能做到這一點?
print(os.system('myscript.sh ').ser.readline())
不起作用。
'os.system()'不會返回任何你想'打印'的東西。如果子進程向標準輸出輸出任何東西,那就是它將要去的地方,並且你的Python腳本不會知道。如果你想捕獲子進程打印的內容,你有另一個理由來看看'subprocess'模塊,特別是'check_output'方法(Python 2.7+) – tripleee