2011-05-23 215 views
1

所以,我認爲如果我能夠用一些python魔術一舉攻破我的開發環境並運行,那將會很酷。各種數據庫,網絡服務器等通過Python運行一個長時間的運行過程Popen

但是,下面的每一個變化,我已經試過以下似乎失敗'文件未找到'。

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

直接從shell運行命令(即​​)工作得很好。奇怪的是,一個簡單的命令行uptime似乎工作正常。

關於發生了什麼的任何線索?另外,雖然我們在這個話題上,當我想要並行運行這些外部進程的許多時,是否使用multiprocessing

由於

回答

2

exec是在bash內置命令,而不是可執行文件。該文件未找到錯誤可能來自執行沒有被發現在$PATH

我會嘗試省略Popen調用中的「exec」。

+0

謝謝,就是這樣:) – malangi 2011-05-23 09:48:45