python执行外部命令_python类库32[执行外部命令]

1) os.system()

此方法启动新的进程来执行指定的外部命令,但是不能返回外部命令的输出,外部命令任然输出到标准输出。此函数的返回值与所运行的系统有关,在windows系统返回外部命令的返回值,在Linux系统中,返回值与函数wait()类似,进程kill的信号和返回值组成的16位值。

例如:

在windows上执行:

os.system("tasklist")

在Linux上执行:

os.system("ps -aux")

2)  os.fork() + os.exec*()

启动新的进程,然后在新进程环境中执行外部程序。os.fork()方法只在Linux环境下有效。一般不常用。

3) os.popen()

启动新的进程,且将外部命令的输出作为文件类型对象返回。不能获得外部命令的返回值。

例如:

output = os.popen("tasklist")

output.read()

4) commands.getstatusoutput() 或 subprocess.popen()

在python2.6前使用commands.getstatusoutput();

在python2.6之后只用subprocess.popen()。

使用subprocess模块可以获得外部命令的输出和返回值,且可以设置等待外部命令结束,还外部命令还可以接受来自管道的输入。

总之,如果只是简单地执行外部命令,可以使用os.system(),但是如果需要更复杂的功能需要获得外部命令的返回值和输出且需要与外部命名交互,则使用subprocess模块。

完!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值