模块和包.os

简单介绍:

此模块儿包含普遍的操作系统功能


系统属性:

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信号


你可能感兴趣的:(模块和包.os)