读书人

bat批量批改文件名

发布时间: 2012-07-04 19:33:55 作者: rapoo

bat批量修改文件名

1.bat重命名文件

ren aaa.txt bbb.doc

解释:将 aaa.txt 命名为 bbb.doc

?

2.循环重命名一个文件夹下的所有结尾为xls的文件,前加上A_

for /f %%i in ('dir /b *.xls') do (ren %%i A_%%i)

?

3. 在原文件名前面加当前系统日期格式yyyyMMdd

@echo off
for /f "tokens=1,2,3 delims=- " %%a in ('date /t') do set day=%%a%%b%%c
for /f %%i in ('dir /b *.txt') do (ren %%i %day%%%i)

?

解释:tokens=1,2,3 delims=-? 以‘-’为分隔符,将当前日期截取为三部分,分别付给a,b,c,

???????? 设置day变量为截取到的三部分的结合,set day=%%a%%b%%c,即day=格式为yyyyMMdd的当天日期

?

???????? 循环修改同一目录下的文件名,*.txt的都会被修改; i为原文件名

?

4.现有一堆照片,命名格式为0001.jpg,0002.jpg,0003.jpg,…,00020.jpg,……

要求在所有文件名前加上A_

@echo off
rem 启用"延缓环境变量扩充"
setlocal EnableDelayedExpansion
set a=1
rem 循环当前目录下所有图片的文件名,支持带空格的名称
for /f "delims=" %%i in ('dir /b *.jpg') do (
rem 如果没有相同的文件名,则继续
if not "%%~ni"=="%~n0" (
if !a! LSS 10 (ren "%%i" "A_000!a!.jpg") else ren "%%i" "A_!a!.jpg"
rem 设置数值型变量a=a+1
set /a a+=1
)
)
echo 批量重命名完成!
pause

?

?

1 楼 yunzhongxia 2009-12-11 来看看芳芳的博客,写的挺好的 2 楼 yuyujulin 2011-04-15 博主,我想把aaa.txt 改为 aaa_.txt 改怎么改呢?好像你文章里面都没有在 文件名和扩展名之间加字符串的例子呢?

读书人网 >操作系统

热点推荐