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

完善批量重命名每日PDF收据的批处理脚本需求

批量重命名PDF收据脚本(支持多文件+跳过空文件)

嘿,我帮你把这个批处理脚本调整到位了,完全适配你的需求:循环处理所有PDF、逐个询问对应收据号,还能自动跳过无收据的空PDF文件。先上修改后的完整代码:

@echo off
setlocal enabledelayedexpansion

:: 遍历当前目录下所有PDF文件
for %%a in ("*.pdf") do (
    :: 跳过大小为0的空PDF文件
    if %%~za equ 0 (
        echo 🚫 跳过空PDF文件: %%~nxa
        goto nextfile
    )

    :: 提示当前待处理文件,询问收据号
    echo 📄 当前处理文件: %%~nxa
    set /p "str=请输入该文件对应的收据号(直接回车可跳过此文件): "
    
    :: 用户未输入收据号时,跳过重命名
    if "!str!"=="" (
        echo ⏭️ 未输入收据号,跳过此文件
        goto nextfile
    )

    :: 生成新文件名并执行重命名
    set "newname=%%~Na!str!%%~Xa"
    echo 🔍 预览重命名: %%~nxa → !newname!
    ren "%%~a" "!newname!"
    echo ✅ 已完成重命名: !newname!

    :nextfile
)

echo 🎉 所有文件处理完成!
pause

关键功能说明:

  • 延迟变量扩展:setlocal enabledelayedexpansion 解决了批处理循环中变量实时读取的问题,确保用户输入的收据号能正确传递到重命名逻辑里。
  • 自动跳过空PDF:通过%%~za获取文件大小,直接跳过0字节的空文件,不用再手动筛选。
  • 灵活的收据号输入:每个PDF文件都会单独询问收据号,如果不需要重命名某个文件,直接回车就能跳过,完美适配“跳过无收据文件”的需求。
  • 匹配示例命名规则:完全按照你给的示例,把收据号追加到原文件名的前缀后,比如01May2019-Fine-CS0000.pdf会变成01May2019-Fine-CS00005680.pdf。
  • 可视化提示:加入了简单的 emoji 提示,让你更清楚当前的处理状态,避免操作混乱。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 07:26:11