大白兔联盟

文章搜索
搜索
当前位置:首页 > 前沿技术 > 编程技术 > 文章详情

批量处理文件名,bat批处理

大白兔    2023-4-10  267  0评论

什么?为了个批量处理文件名称要下载一个软件?

告诉你没必要! 一个批处理能解决的事情就没必要下载软件了,下载软件又存在不定风险

@echo off
chcp 65001 > nul
setlocal EnableExtensions EnableDelayedExpansion

rem 定义非法字符列表
set "illegal=^<^>^:^"^/^?*"

:input_prefix
set /p "prefix=请输入前缀名称:"

rem 检查输入的前缀名称是否包含非法字符
set "cleaned=%prefix%"
set "is_legal=true"
for %%i in (%illegal%) do (
    set "cleaned=!cleaned:%%~i=!"
    if not "!cleaned!" equ "%prefix%" set "is_legal=false"
)

if not "%is_legal%" equ "true" (
    echo 前缀名称中不能包含以下非法字符:%illegal%
    goto input_prefix
)

set /p "ext=请输入要重命名的文件后缀名(不含点号):"
set "count=0"

for /f "delims=" %%f in ('dir /a-d /b /on *.%ext%') do (
    set "filename=%%~nf"
    set /a "count+=1"

    rem 如果文件名包含空格,需要使用双引号将文件名括起来
    if "!filename!" neq "%%~nf" set "filename="!filename!""

    rem 如果文件名已经被重命名了,直接跳过
    if "!filename:~0,8!" equ "!prefix!_" (
        echo [跳过] !filename!.%ext%
    ) else (
        set "newname=!prefix!!count!.%ext%"
        echo [重命名] !filename!.%ext% -^> !newname!
        ren "%%f" "!newname!"
    )
)

echo 重命名完成!
pause

免责声明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

挤眼 亲亲 咆哮 开心 想想 可怜 糗大了 委屈 哈哈 小声点 右哼哼 左哼哼 疑问 坏笑 赚钱啦 悲伤 耍酷 勾引 厉害 握手 耶 嘻嘻 害羞 鼓掌 馋嘴 抓狂 抱抱 围观 威武 给力
提交评论

清空信息
关闭评论