Python 调用外部命令

python 可以使用 os 模块来调用外部的 Linux Shell 命令,常用的方法如下:

os.system():结果输出在终端上,捕获不到
os.popen() : 结果返回一个对象,即标准输出
os.popen2():结果返回两个对象,分别是标准输入,标准输出
os.popen3():结果返回三个对象,分别是标准输入,标准输出,标准错误输出
os.popen4():结果返回两个对象,分别是标准输入,标准输出(标准输出中包括标准错误输出)

In [2]: stdout = os.system('ls /data')    # os.system() --- 结果输出在终端上,会返回执行命令的状态码,我们可以用变量来接收
1.txt  2.txt  3.txt

In [3]: print(stdout)
0
In [7]: stdout = os.popen('ls /data')    # os.popen() --- 结果返回一个对象,即标准输出,标准输出需要用read()、readlines()等方法读取

In [8]: print stdout.read()
1.txt
2.txt
3.txt
In [24]: stdin, stdout = os.popen2('cat')    # os.popen2() --- 结果返回两个对象,分别是标准输入,标准输出

In [25]: stdin.write('hello\n')              # 我们使用 write() 来进行输入,使用 close() 来结束输入,使用 read() 来读取输出

In [26]: stdin.write('world\n')

In [27]: stdin.close()

In [28]: print stdout.read()
hello
world

    

猜你喜欢

转载自www.cnblogs.com/pzk7788/p/10300734.html
今日推荐