Мне нужно сделать кучу копирования, перемещения файлов, команды svn check out, проверки директорий и т.д., и я пытаюсь сделать скрипт, который сделает это за меня. У меня есть базовый синтаксис python, но я не уверен, как использовать python для выполнения команд linux. Я знаю команды linux, например, sudo apt-get install subversion, но не знаю, как обернуть их вокруг python.
В частности, кто-нибудь может привести примеры того, как:
Есть еще много чего, но я хочу понять основные принципы и на самом деле научиться выполнять команды linux с помощью сценариев python. Спасибо за ваше время~
EDIT: От меня конкретно требуется использовать python
Конечно, можно сделать все с помощью встроенного материала Python от os и подпроцесс модули.
А немного хитрая вещь состояла бы в том, если Вы хотите, чтобы Ваш сценарий "взаимодействовал" с программами, Вы вызываете (как, "ожидают, пока это не печатает 'Нажмите Enter для продолжения', затем отправьте ему Ввести нажатие клавиши) - для которого можно использовать модуль pexpect .
Для немного высокоуровневого пути взглянули на библиотека Fabric - помимо выполнения локальных команд, это также позволило бы Вам легко выполнять код на удаленных машинах через SSH.
небольшая выборка А кода с помощью Матрицы:
if "dirty" in api.local("git describe --dirty", capture=True):
print colors.red("""Your repository is dirty, commit any changes first""")
sys.exit(1)
Чтения почти как поэзия:) Подобный код в Bash был бы похож на непонятную путаницу в сравнении...