【python】python调用shell方法
在python脚本中,有时候需要调用shell获取一下信息,下面介绍两种常用的调用方法。
第一种,os.system()
这个函数获取的是命令的执行状态,比如
>>> import os
>>> a = os.system('echo 123')
123
>>> print a
0
>>>
变量a的值是“echo 123”这个命令的执行状态,成功或者失败,不是这个命令的输出。
第二种,os.popen()
这个函数获取的是命令的输出,比如
>>> import os >>> a = os.popen('echo 123') >>> print a' echo 123', mode 'r' at 0x7fb6e28eeed0> >>> a = os.popen('echo 123').read() >>> print a 123 >>>
变量a的值是“echo 123”这个命令的输出。
注意:上面的第一次print a的结果是不对的,原因为此时a的值是一个内存位置,不是真正的值,需要使用read()来读取内存中的内容,所以在第二次print的时候,加了read,才是真正想要的结果。