Python批量更新文件修改时间

 本地模拟测试准备脚本

import  os,sys,time,re
# #########################################################
#
#Reset The ModifyDate of AAA File With FileName.                ##
#
#For Example: filename is AAA_01_20100703_2130_0683.TXT##
#
#Auther:qiuwg Date:2010-08-24                                                    ##
#
#########################################################
def  list_file_dir(level,rootpath):
    
for  path  in  os.listdir(rootpath):
        absolutely_path 
=  os.path.join(rootpath,path)
        
if  os.path.isdir(absolutely_path):
            list_file_dir(level
+ 1 , absolutely_path) 
        
else :
            modify_file_date(absolutely_path)

def  modify_file_date(file):
    idx
= file.rfind( " / " )
    path
= " ./ "
    filename
= file
    
if  idx  >   - 1 :
        path
= file[:idx + 1 ]
        filename
= file[idx + 1 :]
    
# mt=os.path.getmtime(filename)
    expression = r " ^AAA_\d{2}_\d{8}_\d{4}_\d{4}.TXT$ "
    
if  re.match(expression,filename):
        temp
= filename.split( " _ " );
        
print  path + filename + "  modifydate >>  " + temp[ 2 ] + temp[ 3 ]
        temptime
= time.strptime(temp[ 2 ] + temp[ 3 ], ' %Y%m%d%H%M ' )
        mtime
= time.mktime(temptime)
        os.utime(path
+ filename,(mtime,mtime))

if   __name__   ==   " __main__ " :
    list_file_dir(
1 , " /ldata/fuse-udr-split/ " )
    
print   " Handed Over "


增加了文件名正则匹配,和递归目录查找。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值