Python 实现文件重命名并添加时间戳及复制移动

向北走
向北走
发布时间:2026-10-13 | 6人浏览过
原创

本文介绍在 Python 中如何为指定目录下的文件添加当前系统时间戳并重命名,同时演示两种策略:一是原地重命名后复制,二是复制时直接生成带时间戳的新文件名。通过 datetime 模块获取时间格式,结合 os 和 shutil 库完成文件遍历与移动操作,确保源文件处理灵活可控。

问题描述:

场景一:先对源目录 /home/kangle/webdata/JPEGImages 下的 111.jpg 文件添加当前时刻的时间戳,随后将其复制到目标路径 /home/kangle/result。此操作会导致源文件夹中的文件名也被修改,重命名后的格式类似于 2018-03-27-18-11-11_111.jpg。

最终文件名需遵循 2018-03-27-18-11-11_111.jpg 的格式,其中时间戳部分由当前系统时间生成,文件被保存至 /home/kangle/result 目录下。

import datetime
nowTime = datetime.datetime.now().strftime('%Y-%m-%d-%H-%M-%S') # 现在
dir = "/home/kangle/webdata/JPEGImages"
for root, dirs, file in os.walk(dir):
 for b in file:
  if os.path.join(b).split('.')[1] == 'jpg':
   os.rename(dir + os.sep + b, dir + os.sep + str(nowTime) + '_' + b)
   print (dir, b)
   shutil.copy(os.path.join(dir, str(nowTime) + '_' + b), r'/home/kangle/result')

场景二:在将文件从 /home/kangle/webdata/JPEGImages 复制到 /home/kangle/result 的过程中直接添加时间戳,保持源文件夹下的原始文件名不变。复制后的新文件重命名为类似 2018-03-27-18-11-11_111.jpg 的形式,同样保存至 /home/kangle/result。

import datetime
nowTime = datetime.datetime.now().strftime('%Y-%m-%d-%H-%M-%S') # 现在
 
dir = "/home/kangle/webdata/JPEGImages"
for root, dirs, file in os.walk(dir):
 for b in file:
  if os.path.join(b).split('.')[1] == 'jpg':
   # os.rename(dir + os.sep + b, dir + os.sep + str(nowTime) + '_' + b)
   shutil.copy(os.path.join(dir, b),os.path.join("/home/kangle/result", str(nowTime) + '_' + b))
   # shutil.copy(os.path.join(dir, str(nowTime) + '_' + b), r'/home/kangle/result')

以上关于 Python 为文件名添加时间戳并处理文件移动的方法分享完毕,希望能为读者提供实用参考,欢迎继续支持相关技术内容。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表