全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 2873|回复: 15

Python 怎么去掉 os.system 返回的 0

[复制链接]
发表于 2019-1-1 00:40:30 | 显示全部楼层 |阅读模式
本帖最后由 Sakuya 于 2019-1-11 19:08 编辑



本身 py 自己的正则就难写,无奈还是调用 shell 里的 grep,这 py 调用完还多此一举加个 0

---
使用官方文档里的 subprocess.check_output() 解决了问题
https://python3-cookbook.readthedocs.io/zh_CN/latest/c13/p06_executing_external_command_and_get_its_output.html
发表于 2019-1-1 00:41:39 | 显示全部楼层

被pao   you   
我想多了
发表于 2019-1-1 00:55:03 | 显示全部楼层
一看到py我怎么就想是py
发表于 2019-1-1 00:57:50 | 显示全部楼层
python新手也不懂,搜了下,貌似应该用popen获取执行结果,你那里的 0 应该是命令执行的退出码。

python中的os.system()和os.popen()区别
python调用Shell脚本或者是调用系统命令,有两种方法:os.system(cmd)或os.popen(cmd),前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的输出内容。实际使用时视需求情况而选择。
发表于 2019-1-1 01:12:37 | 显示全部楼层
为什么不用os.popen呢?  

 楼主| 发表于 2019-1-1 01:31:07 | 显示全部楼层
blanco 发表于 2019-1-1 00:57
python新手也不懂,搜了下,貌似应该用popen获取执行结果,你那里的 0 应该是命令执行的退出码。

python中 ...


os.popen() 返回了 <os._wrap_close object at 0x6ffffc8b1d0> 不知道咋整
我查谷歌,最后用了官方文档里写的 subprocess.check_output() 解决了问题
https://python3-cookbook.readthedocs.io/zh_CN/latest/c13/p06_executing_external_command_and_get_its_output.html
发表于 2019-1-1 01:47:12 来自手机 | 显示全部楼层
自己不好好学py,还怪起正则来了。
 楼主| 发表于 2019-1-1 01:48:32 | 显示全部楼层
 楼主| 发表于 2019-1-1 01:49:48 | 显示全部楼层
dupit8 发表于 2019-1-1 01:47
自己不好好学py,还怪起正则来了。

我的错我的错,大佬牛逼
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2026-4-9 01:40 , Processed in 0.074903 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表