You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell批量重命名照片:同日期文件添加递增序号方法

解决同日期照片重命名冲突并添加递增序号的方法

可以通过按文件的最后修改日期分组,再给每组内的文件添加递增序号来解决这个问题,具体PowerShell命令如下:

Get-ChildItem -File | 
    Group-Object -Property { $_.LastWriteTime.ToString("yyyyMMdd") } | 
    ForEach-Object {
        $count = 1
        $_.Group | ForEach-Object {
            $newName = if ($_.Group.Count -eq 1) {
                "New name_$($_.LastWriteTime.ToString('yyyyMMdd'))$($_.Extension)"
            } else {
                "New name_$($_.LastWriteTime.ToString('yyyyMMdd'))($count)$($_.Extension)"
            }
            $_ | Rename-Item -NewName $newName -Force
            $count++
        }
    }

命令说明:

  • Get-ChildItem -File:仅获取当前目录下的文件(排除文件夹)
  • Group-Object -Property { $_.LastWriteTime.ToString("yyyyMMdd") }:将文件按最后修改日期的yyyyMMdd格式分组,同日期文件会被归为一组
  • 遍历每个分组:
    • 初始化计数器$count = 1
    • 对分组内的每个文件:
      • 若分组仅含一个文件,直接使用「New name_日期+扩展名」命名
      • 若分组有多个文件,在日期后添加递增序号(如(1)、(2))
      • 执行重命名,-Force参数确保处理可能存在的重名冲突
      • 计数器自增

注意事项:

  • 如果照片的拍摄日期与LastWriteTime不符(比如跨设备拷贝后修改时间变更),可替换为$_.CreationTime;若要读取照片EXIF拍摄日期,需借助第三方工具(如ExifTool),PowerShell原生命令仅支持文件属性日期
  • 执行重命名前,可先移除Rename-Item相关代码,仅输出$newName预览命名结果,确认无误后再执行重命名

内容的提问来源于stack exchange,提问作者Riley W

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 22:12:38