Используйте модуль подпроцесса :
from subprocess import call
call(['ls', '-l'])
Это рекомендуемый стандартный способ. Однако более сложные задачи (трубы, выходные данные, вход и т. Д.) Могут быть утомительными для построения и записи.
Примечание: shlex.split может помочь вам разобрать команда для call
и других функций subprocess
в случае, если вы не хотите (или не можете!) предоставить их в виде списков:
import shlex
from subprocess import call
call(shlex.split('ls -l'))
Если вы не против внешних зависимостей, используйте plumbum :
from plumbum.cmd import ifconfig
print(ifconfig['wlan0']())
Это лучшая обертка subprocess
. Это кросс-платформенный, т. Е. Он работает как в Windows, так и в Unix-подобных системах. Установите pip install plumbum
.
Еще одна популярная библиотека - sh :
from sh import ifconfig
print(ifconfig('wlan0'))
Однако sh
отказалась от поддержки Windows, поэтому она не такая потрясающая как это было раньше. Установите pip install sh
.