首页 > it技术 > >
python库|python 查看、修改文件属性
2021-11-04
In [132]:import os# 查看文件属性
In [133]: os.stat('package-lock.json')
Out[133]: os.stat_result(st_mode=33206, st_ino=7036874417947173, st_dev=651824810, st_nlink=1, st_uid=0, st_gid=0, st_size=304, st_atime=1523547919, st_mtime=1523547919, st_ctime=1523547919)
st_mode: inode 保护模式
st_ino: inode 节点号。
st_dev: inode 驻留的设备。
st_nlink: inode 的链接数。
st_uid: 所有者的用户ID。
st_gid: 所有者的组ID。
st_size: 普通文件以字节为单位的大小;包含等待某些特殊文件的数据。
st_atime: 上次访问的时间。
st_mtime: 最后一次修改的时间。
st_ctime: 由操作系统报告的”ctime”。在某些系统上(如Unix)是最新的元数据更改的时间,在其它系统上(如Windows)是创建时间(详细信息参见平台的文档)。
Help on built-in function utime in module posix:utime(...)
utime(path, (atime, mtime))
utime(path, None)Set the access and modified time of the file to the given values.If the
second form is used, set the access and modified times to the current time.
In [141]: !touch test.txtIn [143]: os.stat('test.txt')
Out[143]: os.stat_result(st_mode=33206, st_ino=14355223812719680, st_dev=651824810, st_nlink=1, st_uid=0, st_gid=0, st_size=0, st_atime=1532879422, st_mtime=1532879422, st_ctime=1532879404)In [146]: test_stat = os.stat('test.txt')In [147]: test_stat.st_mtime
Out[147]: 1532879422.2283707# 查看文件的修改时间
In [149]: time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(test_stat.st_mtime))
Out[149]: '2018-07-29 23:50:22'# 查看文件的上次访问时间
In [150]: time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(test_stat.st_atime))
Out[150]: '2018-07-29 23:50:22'# 设置新的修改时间,并转为时间戳
In [153]: test_new_mtime = time.mktime(time.strptime('2017-07-29 23:50:22', '%Y-%m-%d %H:%
...: M:%S'))# 设置新的上次访问时间,并转为时间戳
In [154]: test_new_atime = time.mktime(time.strptime('2016-07-30 23:50:22', '%Y-%m-%d %H:%
...: M:%S'))# 修改上次访问时间、修改时间
In [155]: os.utime('test.txt', (test_new_atime, test_new_mtime))# 获取修改后的文件属性
In [156]: new_test_stat = os.stat('test.txt')# 查看修改后的修改时间
In [160]: time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(new_test_stat.st_mtime))
Out[160]: '2017-07-29 23:50:22'# 查看修改后的上次访问时间
In [161]: time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(new_test_stat.st_atime))
Out[161]: '2016-07-30 23:50:22'
推荐阅读