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

求可遍历多目录批量重命名TIFF文件的PowerShell脚本

批量重命名TIFF文件的PowerShell实现

完全可行,不用Do循环,直接通过遍历目标文件夹的方式就能实现需求。以下是可以直接使用的脚本,以及关键部分的说明:

完整脚本

# 筛选所有符合"vdl-1984-xx"格式的文件夹
Get-ChildItem -Directory -Filter 'vdl-1984-??' | ForEach-Object {
    # 提取文件夹名称中的两位序号(xx部分)
    $folderSeq = $_.Name.Split('-')[3]
    # 初始化当前文件夹内的文件序号
    $fileCount = 1
    # 遍历当前文件夹下的所有TIFF文件
    Get-ChildItem -Path $_.FullName -Filter '*.tiff' | ForEach-Object {
        # 按规则生成新文件名并重命名
        Rename-Item -Path $_.FullName -NewName "vdl-1984-$folderSeq-{0:D3}.tiff" -f $fileCount++
    }
}

关键逻辑说明

  • 精准筛选目标文件夹:Get-ChildItem -Directory -Filter 'vdl-1984-??'只列出符合命名格式的文件夹,??匹配两位数字,避免误处理其他无关文件夹。
  • 提取文件夹序号:通过Split('-')[3]将文件夹名称按-分割,取第4段(索引从0开始)就是需要的xx序号。
  • 独立计数每个文件夹:每个文件夹内单独初始化$fileCount = 1,确保每个文件夹的文件序号都从001开始自增,不会跨文件夹累计。
  • 三位数字格式化:{0:D3}会将序号格式化为三位数字,比如1变成001、10变成010,严格符合你要求的命名规则。

注意事项

  • 建议先找一个测试文件夹运行脚本,确认重命名效果后再批量执行,防止误操作。
  • 如果需要处理大小写混合的TIFF文件(如.TIFF),可以将Filter改为*.[tT][iI][fF][fF],PowerShell默认不区分大小写,但这个写法能确保覆盖所有情况。
  • 如果遇到重命名失败的情况(比如文件名重复),脚本会抛出错误,此时可以检查是否有手动命名过的文件和自动生成的文件名冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 17:42:38