开发者社区> 余二五> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

os 与 stat 在文件中获取相关的信息

简介:
+关注继续查看

#!/usr/bin/env python

#-*- encoding:UTF-8 -*-


import os,time,stat


fileStats = os.stat ( 'test.txt' )                         #获取文件/目录的状态


#定义一个字典

fileInfo = {

'Size':fileStats [ stat.ST_SIZE ],                         #获取文件大小

'LastModified':time.ctime( fileStats [ stat.ST_MTIME ] ),  #获取文件最后修改时间

'LastAccessed':time.ctime( fileStats [ stat.ST_ATIME ] ),  #获取文件最后访问时间

'CreationTime':time.ctime( fileStats [ stat.ST_CTIME ] ),  #获取文件创建时间

'Mode':fileStats [ stat.ST_MODE ]                          #获取文件的模式

}



#print fileInfo


for field in fileInfo:                                     #显示对象内容

  print '%s:%s' % (field,fileInfo[field])


for infoField,infoValue in fileInfo:

  print '%s:%s' % (infoField,infoValue)

if stat.S_ISDIR ( fileStats [ stat.ST_MODE ] ):           #判断是否路径

  print 'Directory. '

else:

  print 'Non-directory.'


if stat.S_ISREG( fileStats [ stat.ST_MODE ] ):           #判断是否一般文件

   print 'Regular file.'

elif stat.S_ISLNK ( fileStats [ stat.ST_MODE ] ):         #判断是否链接文件

   print 'Shortcut.'

elif stat.S_ISSOCK ( fileStats [ stat.ST_MODE ] ):        #判断是否套接字文件    

   print 'Socket.'

elif stat.S_ISFIFO ( fileStats [ stat.ST_MODE ] ):        #判断是否命名管道

   print 'Named pipe.'

elif stat.S_ISBLK ( fileStats [ stat.ST_MODE ] ):         #判断是否块设备

   print 'Block special device.'

elif stat.S_ISCHR ( fileStats [ stat.ST_MODE ] ):         #判断是否字符设置

   print 'Character special device.'


   stat模块描述了os.stat(filename)返回的文件属性列表中各值的意义.我们可方便地根据stat模块存取os.stat()中的值.

os.stat(path)执行一个stat()系统调用在给定的path上,返回一个类元组对象(stat_result对象,包含10个元素),属性与stat结构成员相关:st_mode(权限模式),st_ino(inode number),st_dev(device),st_nlink(number of hard links),st_uid(所有用户的user id),st_gid(所有用户的group id),st_size(文件大小,以位为单位),st_atime(最近访问的时间),st_mtime(最近修改的时间),st_ctime(创建的时间)




>>> import os

>>> print os.stat("/root/python/zip.py")

(33188, 2033080, 26626L, 1, 0, 0, 864, 1297653596, 1275528102, 1292892895)


>>> print os.stat("/root/python/zip.py").st_mode   #权限模式

33188

>>> print os.stat("/root/python/zip.py").st_ino   #inode number

2033080

>>> print os.stat("/root/python/zip.py").st_dev    #device

26626

>>> print os.stat("/root/python/zip.py").st_nlink  #number of hard links

1

>>> print os.stat("/root/python/zip.py").st_uid    #所有用户的user id

0

>>> print os.stat("/root/python/zip.py").st_gid    #所有用户的group id

0

>>> print os.stat("/root/python/zip.py").st_size  #文件的大小,以位为单位

864

>>> print os.stat("/root/python/zip.py").st_atime  #文件最后访问时间

1297653596

>>> print os.stat("/root/python/zip.py").st_mtime  #文件最后修改时间

1275528102

>>> print os.stat("/root/python/zip.py").st_ctime  #文件创建时间

1292892895




import os,stat,time


fileStats = os.stat('new.txt')


print 'size:',fileStats[stat.ST_SIZE] #读取文件大小


print 'type:',fileStats[stat.ST_MODE] #读取文件属性


print 'atime:',fileStats[stat.ST_ATIME] #读取atime


print 'mtime:',fileStats[stat.ST_MTIME] #读取mtime


print 'ctime:',fileStats[stat.ST_CTIME] #读取ctime











本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1766284,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
vue与django交互时处理id相关问题
vue与django交互时处理id相关问题
8 0
如何处理Angular项目在Visual Studio Code打开报关于@Decorators的警告信息
如何处理Angular项目在Visual Studio Code打开报关于@Decorators的警告信息
16 0
如何利用CSS选择器抓取京东网商品信息
前几天小编分别利用Python正则表达式、BeautifulSoup、Xpath分别爬取了京东网商品信息,今天小编利用CSS选择器来为大家展示一下如何实现京东商品信息的精准匹配~~ 目前,除了官方文档之外,市面上及网络详细介绍BeautifulSoup使用的技术书籍和博客软文并不多,而在这仅有的资料中介绍CSS选择器的少之又少。
1237 0
[20170203]建立dataguard的standby控制文件
[20170203]建立dataguard的standby控制文件.txt --这个问题困扰我很久,链接:http://blog.itpub.net/267265/viewspace-1151324/ --就是使用rman的方式建立控制文件,会出现ora-01665错误.
834 0
DBMS_STATS收集统计信息的问题及解决
收集数据库的统计信息是dba工作的一部分,如果在数据快速增长的库上,统计信息如果收集的频率太慢,会对执行计划有一定的影响。 而对于逐渐客户饱和的系统来说,统计信息就可以很长时间收集或者尽量不收集。
1102 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载