zoukankan      html  css  js  c++  java
  • Python-获取文件状态模块-os stat lastat fstat path

    案例:

           在某项目中,需要获取文件状态,如:

    1. 文件的类型(普通文件、目录、符合连接、设备文件)
    2. 文件的访问权限
    3. 文件最后 访问、修改、节点状态 时间
    4. 普通文件大小
    5. ……

    如何解决?

           方法1:通过os原始接口,stat() , lstat(),fstat()

                  stat()      文件所有属性

                  lstat()     不查看链接文件类型

                  fstat()     传入参数为文件描叙符

    #!/usr/bin/python3
    
    import os
    import stat
    
    s = os.stat('python.PNG')
    print(s)
    print(bin(s.st_mode))
    
    # 判断文件是否为目录
    print(stat.S_ISDIR(s.st_mode))
    
    # 判断文件是否是普通文件
    print(stat.S_ISREG(s.st_mode))
    
    # 判断文件权限
    # 可读,user,大于0为真
    print(s.st_mode & stat.S_IRUSR)
    
    # 可执行,user
    print(s.st_mode & stat.S_IXGRP)
    
    # 获取文件 访问、修改、节点状态 时间
    import time
    
    print(time.localtime(s.st_atime))
    print(time.localtime(s.st_ctime))
    print(time.localtime(s.st_mtime))
    
    # 获取文件大小
    print(s.st_size)

           方法2:os.path下的方法,更简洁

    #!/usr/bin/python3
    
    # os.path方法
    import os
    
    # 判断文件是否为目录
    print(os.path.isdir('python.PNG'))
    
    # 判断文件是否是普通文件
    print(os.path.isfile('python.PNG'))
    
    
    # 获取文件 访问、修改、节点状态 时间
    import time
    
    print(time.localtime(os.path.getatime('python.PNG')) )
    print(time.localtime(os.path.getmtime('python.PNG')) )
    print(time.localtime(os.path.getctime('python.PNG')) )
    
    # 获取文件大小
    print(os.path.getsize('python.PNG'))
  • 相关阅读:
    【Java】XML文件的解析
    PE知识复习之PE合并节
    PE知识复习之PE的重定位表
    PE知识复习之PE的两种状态
    PE知识复习之PE的节表
    PE知识复习之PE的各种头属性解析
    PE知识复习之PE的导入表
    PE知识复习之PE的导出表
    PE知识复习之PE的绑定导入表
    第三讲扩展,VA,RVA,FA(RAW),模块地址的概念
  • 原文地址:https://www.cnblogs.com/2bjiujiu/p/7258563.html
Copyright © 2011-2022 走看看