Чтобы выполнить команды оболочки из сценария Python, вы можете использовать несколько методов. Вот некоторые из наиболее распространенных подходов:
-
Использование функции
os.system: Функцияos.systemпозволяет запускать команды оболочки, передавая их в виде строк. Например, вы можете использоватьos.system("ls -l")для выполнения команды “ls -l” в оболочке. -
Использование модуля
subprocess. Модульsubprocessобеспечивает большую гибкость и контроль над выполнением команд оболочки. Вы можете использовать функциюsubprocess.runдля выполнения команд и захвата их вывода. Этот метод рекомендуется для более сложных сценариев. Вот пример:import subprocess result = subprocess.run(["ls", "-l"], capture_output=True, text=True) print(result.stdout) -
Использование функции
os.popen. Функцияos.popenпозволяет открыть канал для команды или из нее и получить доступ к ее вводу или выход. Вот пример:import os stream = os.popen("ls -l") output = stream.read() print(output) -
Использование сторонних библиотек: доступны различные сторонние библиотеки, которые предоставляют более расширенные функции для выполнения команд оболочки из Python, например
sh,pexpectиткань. Эти библиотеки предлагают дополнительные функции, такие как удаленное выполнение команд и улучшенное взаимодействие с командной строкой.