批处理bat应用之批量为文件夹下的文件增加文件名前缀
前几天新买了手机,要移动相册里的文件,但是发觉新手机照片的文件名格式比原手机多了“IMG_”的前缀,无奈之下就去学习了,利用批处理的批量增添文件名前缀的方法,在此阿萌分享给大家,并衍生说明下添加后缀的方法。
批处理bat应用之批量为文件夹下的文件增加文件名后缀的方法将在接下几天中增添文章。
执行图:
按照惯例先介绍下原理:
我们所需功能的主要部分有2个,第一是检索所需要更改的文件,第二则是修改文件名。
第一步主要用到的命令行为:FOR /F “delims=” %%i IN (file) DO command。
这个是批处理工具中用来处理文件和一些命令的输出结果用的,command指的是命令,也就是说,整句话简单的解释为,检索文件夹下的“file”文件,然后执行command里的指令。
第二步我们要用到:ren “file” “changefile”,
ren,全称rename,此命令主要用于重命名。file指代的是需要更改的文件名,changefile是指更改之后的名字。例如ren “qq.jpg” “yy.jpg” 就是把qq.jpg文件重命名为yy.jpg。
然后两者结合起来,例如第一步中的变量%%i作为file,详细看下面代码去理解。
另外为了方便使用,我们必须设置让用户自己定义,自己输入的方法,所以我们要用到:SET /P variable=[promptString],这个命令格式,variable代表的是变量名,promptString是提示字符串,用此设计让用户自己选择要修改的文件类型,和要增添的文件名前缀后缀。
来看代码:
@echo off title 批量替换文件名前缀 echo. echo 本批处理可批量替换本文件所在文件夹下指定文件类型的文件的文件名前缀。 echo. echo.&set /p strtype= 请输入要添加前缀的文件类型(例:jpg): echo.&set /p strname= 请输入要添加的前缀字符串(无需更改请直接回车): setlocal enabledelayedexpansion for /f "delims=" %%i in ('dir /a /b *.%strtype%') do ( ren "%%~i" "%strname%%%i") echo. echo 修改完毕! echo. pause
代码中的setlocal enabledelayedexpansion我就不多解释了,不然就是长篇大论了,现在只能简单的这样说是防止出错吧,如果有需要详细解释可以点进链接去看看。
- 批处理bat代码之setlocal enabledelayedexpansion的作用
- 批处理bat应用之批量为文件夹下的文件增加文件名后缀
分类相关推荐 / Cat Related Articles
- 批处理bat应用之批量为文件夹下的文件增加文件名后缀
- 批处理bat代码之setlocal enabledelayedexpansion的作用