Запуск долгого процесса через Python Popen

1

Итак, я подумал, что было бы здорово, если бы я смог запустить Dev Dev и запустить его одним махом с помощью магии питона. Различные БД, веб-сервер и т.д.

Однако каждый вариант ниже, который я пробовал на следующем, кажется, терпит неудачу с 'file not found'.

p2 = Popen(["exec", "/path/to/redis/server"], stdin=p1.stdout, stdout=PIPE) 
output = p2.communicate()[0]

Выполнение команды непосредственно из оболочки (т.е. exec /path/to/redis/server) работает просто отлично. Как ни странно, простая командная строка uptime работает нормально.

Какие-нибудь подсказки о том, что происходит? Кроме того, пока мы находимся в теме, есть multiprocessing то, что нужно использовать, когда я хочу параллельно запускать многие из этих внешних процессов?

Спасибо

Теги:
multiprocessing
development-environment

1 ответ

2
Лучший ответ

exec - встроенная команда в bash, а не исполняемый файл. Ошибка файла не найдена, вероятно, происходит от exec не найденного в $PATH.

Я бы попробовал пропустить "exec" в вызове Popen.

  • 0
    Спасибо, вот и все :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню