我是fabric新手。我正在以res = fabric.api.sudo(f"pip install {something}",user=user)
身份运行命令。我希望该命令在未找到包/版本(即pip安装失败)时返回stderr或中止。但是,我收到res. return_code = 0、res. stderr、在错误条件下为空。我在stdout上得到了ERROR消息。这是预期行为吗?我如何使stderr具有错误条件和正确的return_密码?
- 版本:**使用带有版本1.14.post1的Fabric3
任何帮助都很好,谢谢。
1条答案
按热度按时间ctehm74n1#
根据文档,
combine_stderr
的默认值为True
,这意味着 stderr 与 stdout 组合在单个流中。如果要单独检索 stderr 上的输出,则需要显式将combined_stderr
设置为False
(并将pty
设置为False
):