Kam*_*Dev 7 python subprocess os.system python-3.x
我想从中获取输出,os.system("nslookup google.com")但0在打印时我总是得到, 。这是为什么,我该如何解决?(Python 3,Mac)
(我查看了如何存储它在 python 中打印到 stdout 的 os.system 的返回值? -但我不明白~我是 python 新手)
使用subprocess:
import subprocess
print(subprocess.check_output(['nslookup', 'google.com']))
Run Code Online (Sandbox Code Playgroud)
如果返回码不为零,它将引发CalledProcessError异常:
try:
print(subprocess.check_output(['nslookup', 'google.com']))
except subprocess.CalledProcessError as err:
print(err)
Run Code Online (Sandbox Code Playgroud)
os.system只返回命令的退出代码。这里0意味着成功。任何其他数字代表与操作系统相关的错误。输出到此过程的标准输出。子进程打算替换os.system.
subprocess.check_output是围绕subprocess.Popen的便捷包装器,可简化您的用例。
| 归档时间: |
|
| 查看次数: |
13246 次 |
| 最近记录: |