Я пытаюсь вытащить одну строку из subprocess.check_output, но до сих пор мне не повезло. Я бегу сценарий Python, и это мой код:Как получить одну строку из вывода печати в Linux?
output = subprocess.check_output("sox /home/pi/OnoSW/data/opsoroassistant/rec.wav -n stat", shell=True)
и это то, что я вернусь, когда я бегу сценарий:
Samples read: 80000
Length (seconds): 5.000000
Scaled by: 2147483647.0
Maximum amplitude: 0.001129
Minimum amplitude: -0.006561
Midline amplitude: -0.002716
Mean norm: 0.000291
Mean amplitude: -0.000001
RMS amplitude: 0.000477
Maximum delta: 0.002930
Minimum delta: 0.000000
Mean delta: 0.000052
RMS delta: 0.000102
Rough frequency: 272
Volume adjustment: 152.409
Теперь я хочу, чтобы получить 9-й линии (RMS амплитуда) из этого списка. Я уже пытался что-то с СЕПГ, но оно не дало ничего назад:
output = subprocess.check_output("sox /home/pi/OnoSW/data/opsoroassistant/rec.wav -n stat 2>&1 | sed -n 's#^RMS amplitude:[^0-9]*\([0-9.]*\)$#\1#p0'",stderr= subprocess.STDOUT, shell=True)
Спасибо
Почему не удается разобрать результат для получения 9-й строки? – SilentMonk