[英]Python3 subprocess check_output returns empty for some commands
我是python3初學者。 我正在嘗試使用python3腳本獲取Java版本。 在檢查了文檔之后,我看到了subprocess.check_output可能正是我所需要的。
output = subprocess.check_output(["java", "-version"])
print("Output is {}".format(output))
問題是我得到的輸出是
Output is b''
為什么我沒有得到bash正確的字符串?
謝謝
由於某種原因,您的輸出將stderr
。 您可以像這樣通過管道將其傳遞給返回值:
output = subprocess.check_output(["java", "-version"], stderr=subprocess.STDOUT)
如果有人知道為什么stderr
,我很高興聽到它。 例如, ["python", "--version"]
可以正常工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.