popen函数_python中os模块的内置函数
python内置的os模块是与操作系统(OS即Operating System的缩写)进行交互的模块,他可以实现很多在命令行下面的操作。
例如:获取操作系统信息、获取/修改环境变量、进行目录操作(创建、删除、遍历)和各种文件操作等等。
下面我们列举几个重要并且常用的内置函数:
1、os.system()
该函数用于执行系统命令,用法示例:
command_shell = "ps aux | grep test"os.system(command_shell )
使用os.system执行完成后,会同步打印出终端输出结果,但是结果不会赋值给指定的变量。
os.system()执行完成后,如果执行成功了,返回结果是0,失败了返回0以外其它的值。
2、os.popen()
如果想将终端输出结果赋值给指定的变量,可以使用os.popen()
os.popen的用法和os.system的用法一样,见下图:
终端输出结果会以一行为一个变量,放在一个文件当中,需要使用readlins()方法来查看,使用完成后需注意一定要用close()方法关闭。
3、os.path.abspath(path)
返回绝对路径,用法示例:
4、os.path.exists(path/file_name)
判断文件是否存在,存在则返回True,不存在则返回False
用法示例:
5、os.path.isdir(path)
判断给定路径是文件还是文件夹,是文件夹的话就返回True,否则则返回False
用法示例:
6、os.path.isfile(path)
判断给定路径是文件还是文件夹,是文件的话就返回True,否则则返回False
用法示例:
7、os.rmdir(path)
os.remove() 方法用于删除指定路径的目录。仅当这文件夹是空的才可以, 否则, 抛出OSError。
如果成功后,该方法没有返回值,失败后则抛出异常。
8、os.remove(file_name)
os.remove() 方法用于删除指定路径的文件。如果指定的路径是一个目录,将抛出OSError。
如果成功后,该方法没有返回值,失败后则抛出异常。
9、os.access()
检测登录用户对文件和路径的权限
语法格式:
os.access(path, mode)
参数
path -- 要用来检测是否有访问权限的路径。
mode -- mode为F_OK,测试存在的路径,或者它可以是包含R_OK, W_OK和X_OK或者R_OK, W_OK和X_OK其中之一或者更多。
os.F_OK: 作为access()的mode参数,测试path是否存在。
os.R_OK: 包含在access()的mode参数中 , 测试path是否可读。
os.W_OK 包含在access()的mode参数中 , 测试path是否可写。
os.X_OK 包含在access()的mode参数中 ,测试path是否可执行。
#!/usr/bin/python# -*- coding: UTF-8 -*-import os, sys# 假定 /tmp/foo.txt 文件存在,并有读写权限ret = os.access("/tmp/foo.txt", os.F_OK)print "F_OK - 返回值 %s"% retret = os.access("/tmp/foo.txt", os.R_OK)print "R_OK - 返回值 %s"% retret = os.access("/tmp/foo.txt", os.W_OK)print "W_OK - 返回值 %s"% retret = os.access("/tmp/foo.txt", os.X_OK)print "X_OK - 返回值 %s"% ret