需要在 Python 代码中运行一个命令,最基本的方法就是 os 模块提供的 system()。
格式
import os
os.system(<command>) -> integer
它只有一个单字符串的参数 <command>,也是 Linux 系统的命令行。
返回值是一个数字,表示命令执行的状态。
这个方式,只适用于 Linux 类操作系统。
范例
>>> os.system('pwd')
获取当前系统的用户所在目录。等价于 shell 中直接执行 'pwd‘。
需要注意的是,如果命令不能自动终止,system() 调用会“阻塞”,这个时候需要先退出所执行的命令:
>>> os.system('top')
需要先输入 'q' 来退出 top 命令。
输出
system() 输出一个数字:
>>> rest = os.system('date')
>>> print rest
0
输出为 0,表示执行正确,否则表示错误:
>>> rest = os.system('date22')
>>> print rest
22312
由于 date22 这个命令不存在,执行的时候报错,这里的输出也就不是 0 了。
特点
'system()所执行的命令,是不与之交互的,比如ssh root@127.0.0.1` 的时候,需要输入密码,它就无能为力了,这需要使用后面要介绍的方法。
参考文章:python2 os.system简单用法