Я бы предложил использовать модуль subprocess
.
Затем вы сможете сделать что-то вроде этого (этот код взят из их документации, для которой требуется Python 3.7)
subprocess.run(["ls", "-l", "/dev/null"], capture_output=True)
, который возвращает
CompletedProcess(args=['ls', '-l', '/dev/null'], returncode=0,
stdout=b'crw-rw-rw- 1 root root 1, 3 Jan 23 16:23 /dev/null\n', stderr=b'')
Для более ранних версий вы должны использовать subprocess.Popen
как этот
your_process = Popen(['ls', '-l', '/dev/null'], stdout=subprocess.PIPE)
your_process.wait()
your_process_output = your_process.stdout().decode() # Here you will have a string
Этот фрагмент может быть очень легко заключен в одну функцию.