如何解决subprocess.run().stdout.read() 返回 CompletedProcess 不是字符串
我正在使用 subprocess
获取命令行 bitwarden
工具的输出以将其重定向到 albert
(Linux 启动器)。我正在使用:
returned_user = subprocess.run(["bw","get","username",query,"--raw","--session",session_key],text=True,stdout=subprocess.PIPE,shell=True,check=True).stdout.read()
检查 type(returned_user)
给出 CompletedProcess
。如何将 stdout
作为字符串获取? subprocess.check_output
也返回 CompletedProcess
。
一切都在 Python 3.9.1 中完成。
解决方法
提到https://docs.python.org/3/library/subprocess.html,你错过了 参数中的 capture_output=True。 我使用 python 3.7.3(在我的 beagelbone 上):
试试python shell:
Result Builder
最好的问候, 伯恩德
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。