【发布时间】:2019-12-01 09:46:16
【问题描述】:
我想执行一个 bash 命令来获取我的默认界面:
ip route list | grep default | awk '{print $5}'
我想要这个,但在 python 脚本中,所以我尝试了:
cmd = "ip route list | grep default | awk '{print $5}'"
ps = subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,stderr=subprocess.STDOUT)
output = ps.communicate()[0]
print(output)
但它给了我b'wlan0\n'而不是wlan0的答案...我还有哪些其他解决方案或我在哪里犯了错误?
【问题讨论】:
-
使用
output.decode("utf-8") -
……也许还有
.strip() -
这是正确的。
-
非常感谢解码和剥离的组合是完美的
标签: python bash subprocess pipe