Python 也可以通过os、subprocess执行外部shell命令对POSIX类型系统进行操作。
os 一个很强大的命令,可以通过os下的一些方法去执行shell命令,并且可以对对象执行完的标准输出、标准输入和标准错误输出进行操作。
1.os.system
""""
#!/usr/bin/env python
#-*- coding:utf-8 -*-
"""os.system()方法没有标准输出、标准输入和标准错误输出"""
import os
def posix():
os.system('ifconfig')
if __name__ == "__main__":
posix()
2.os.popen()、os.popen2()、os.popen3
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import os
"""
os.popen() #标准输出
os.popen2() #标准输入和标准输出
os.popen3() #标准输入、标准输出和标准错误输出
"""
def posixOpen():
stdout = os.popen('ifconfig')
data = stdout.read()
return data
def posixPopen2():
stdin, stdout = os.popen2('sort')
stdin.write('a\n') #插入数据
stdin.write('b\n')
stdin.write('g\n')
stdin.write('c\n')
stdin.close()
data = stdout.read() #标准输出
return data
def posixPopen3():
stdin, stdout, stderr = os.popen3('df -q') #输入一个错误命令
data = stderr.read()
return data
def main():
posixOpen()
posixOpen2()
posixOpen3()
if __name__ == "__main__":
main()