如何在 Python Shell 中执行一个 Shell 命令(该命令持续输出内容)并持续获取并显示其输出?

2015-04-27 17:44:42 +08:00
 Feiox
呃,这标题有点拗口。举个例子:

使用 Flask-Script 在命令行中执行 `python manger.py startcelery`
其中 `startcelery` 是想在 bash 中运行 `celery -A celeryd worker -P eventlet -c 1000 -l info` 命令。
那么,如何持续获得这条命令的输出内容并显示在 shell 中呢?

附:以上只是举个例子。不要说为什么不直接在 shell 中执行,我只是想把日常开发中所有的行为都放在 manger.py 中集中管理。另外,我也知道可以用 Fabric 完成。。。。可,Py3k ~(>_<)~
2237 次点击
所在节点    Python
1 条回复
clino
2015-04-27 17:59:57 +08:00
可以参考我之前发的 t/126248
这个因为用了gevent可以支持并发,如果你没有并发的需要可以参考里面的 print_stdout print_stderr

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/186753

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX