У меня есть программа, которая пишет в stderr, но в stdout ничего не пишется, которую я могу правильно перехватить, запустив:
program -badargs 2> stderr.txt
Тем не менее, при попытке использовать подпроцесс Python, я не могу захватить вывод. Я хотел бы объединить stderr в стандартный вывод. Я использую команду:
x = run('program -badargs', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
print((x.stdout).decode('utf-8'))
К сожалению, это просто возвращает пустую строку.