简单介绍:
此模块儿包含普遍的操作系统功能
系统属性:
os.name
说明:获取当前系统平台(windows->nt, linux->posix)
os.curdir
说明:获取当前目录字符(windows->. , linux->.)
os.pardir
说明:获取上级目录字符(windows->.., linux->..)
os.sep
说明:获取路径分割符
os.extsep
说明:获取扩展名分割符
os.pathsep
说明:获取PATH变量分割符
os.linesep
说明:获取行分割符,repr(os.linesep)可获取原型
os.devnull
说明:获取空设备(windows->null, linux->/dev/null
文件目录:
os.path.isdir(path)
说明:判断path是否为目录
os.path.isfile(path)
说明:判断path是否为文件
os.path.isabs(path)
说明:判断path是否是绝对路径
os.path.exists(path)
说明:判断path是否存在
os.getcwd() -> str
说明:返回当前程序运行的绝对路径的str形式
os.getcwdu() -> unicode
说明:返回当前程序运行的绝对路径的unicode形式
os.path.abspath(path)
说明:返回path的绝对路径
os.path.basename(path)
说明:如果path以/结尾返回空,否则返回os.path.split(path)
os.path.dirname(path)
说明:如果path以/结尾返回path,否则返回上级目录
os.path.split(path)
说明:返回2元祖(dirname, basename)
os.path.commonprefix(pathlist)
说明:返回pathlist中所有path共有的最长路径
os.path.join(path,path*)
说明:将多个路径组合并返回
os.path.splitext(path)
说明:返回2元祖(fname,fextension)
os.chdir(path) -> None
说明:改变当前目录到path目录
os.access(path, mode)
说明:测试文件或是目录是否有权限(os.R_OK,os.W_OK,os.X_OK)
os.chmod(path, mode) -> None
说明:改变文件或是目录的权限(os.R_OK,os.W_OK,os.X_OK)
os.makedirs(name, mode=511) -> None
说明:创建递归目录,相当于mkdir -p,还可以指定权限
os.renames(old, new) -> None
说明:将old文件或是目录重命名为new文件或是目录
os.symlink(src, dst) -> None
说明:创建符号链接,源必须是绝对路径
os.utime(path, (atime, mtime)) -> None
说明:更新文件或是目录的访问时间和修改时间
os.listdir(path) -> list_of_strings
说明:列出指定目录下的文件和目录组成的列表
os.walk(top, topdown=True, onerror=None, followlinks=False) -> tuple
说明:top是遍历目录树的路径,topdown为True表示先返回文件然后再遍历子目录,onerror=None表示忽略遍历错误,followlinks=False表示是否跟踪软链接,返回3元祖(当前遍历的路径名,目录列表,文件列表)
# -*- coding: utf-8 -*- """ # # Authors: limanman # OsChina: http://my.oschina.net/pydevops/ # Purpose: # """ import os def main(): """ Main function. :return: None 每进入一个目录root, dirs, files 都会重新被赋值, 所以无需递归 """ dir_name = os.getcwdu() for root, dirs, files in os.walk(top=dir_name): for cur_file in files: file_realpath = os.path.join(root, cur_file) print file_realpath if __name__ == '__main__': main()
文件信息:
os.path.getsize(filename)
说明:返回文件大小,单位字节
os.path.getatime(filename)
说明:返回path的访问时间
os.path.getmtime(filename)
说明:返回path的修改时间
os.path.getctime(filename)
说明:返回path的属性修改时间
os.path.stat(path) -> None
说明:获取path文件或是目录的元数据信息
环境变量:
os.environ
说明:返回包含系统环境变量的字典
os.unsetenv(key)
说明:删除指定环境变量
os.getenv(key, default=None)
说明:获取制定环境变量,如果不存在返回default定义值
进程相关:
os.system(command)
说明:执行系统命令只返回状态码
# -*- coding: utf-8 -*- """ # # Authors: limanman # OsChina: http://my.oschina.net/pydevops/ # Purpose: # """ import os def main(): """Main function.""" command_str = 'echo "lm_521314_lz"|passwd root --stdin &>/dev/null' command_res = os.system(command_str) if command_res == 0: print 'Found Notice: success modifiy password!' else: print 'Found Errors: failed to run shell command!' if __name__ == '__main__': main()
os.getpid()
说明:获取当前进程PID
os.kill(pid, sig)
说明:给指定PID发送一个signal信号
os.killpg(pgid, sig)
说明:给制定进程组发送一个signal信号