竞选大队长演讲稿100字:如何在DOS下批量更改文件夹下的文件名?在线等!

来源:百度文库 编辑:神马品牌网 时间:2024/04/26 07:28:39
如何在DOS下批量更改文件夹下的文件名?在线等!
问题补充:

是批量改,不是一个一个改!

想想似乎加上通配符"*"、"?"也无法进行批量改名,这个不方便,要不windows怎么能这么流行呢~~~~~~~
还是来windows下下个Total Commander资源管理器批量改名吧~下人是个批处理。自己修改一下可能行,正好~~~~麻烦

@echo off
set num=0
set savefile=恢复改名
if {%1}=={} goto :useageexit
if {%2}=={} goto :useageexit
if {%3}=={} goto :useageexit
if exist %savefile%.bat (
attrib %savefile%.bat -h -s -r
)
echo @echo off >%savefile%.bat
for /R %3 %%v IN (%1.%2) DO (
call:rn %%v %2
)
echo 已经执行完改名!
echo echo 恢复完毕!>>%savefile%.bat
echo del %savefile%.bat >>%savefile%.bat
echo pause >>%savefile%.bat
goto :EOF
:useageexit
echo ● 站好了听 ●
echo █┳ 我给你说使 ┗█┛
echo ┏┓ 用方法! ┛┗
echo ----------------------------------------------------------
echo 本程序由小朱制造
echo ----------------------------------------------------------
echo 使用方法: %~n0 文件名 扩展名 路径
echo ----------------------------------------------------------
echo 功能:
echo 本程序将指定类型的文件批量改名为以数字递增表示的文件名;
echo 参数说明:
echo ----------------------------------------------------------
pause
echo 文件名:
echo 指不包括扩展名的纯文件名,可以使用通配符('*','?');
echo 扩展名:
echo 就是扩展名了啊,不要加点('.'),也可以使用通配符号('*','?');
echo 路径:
echo 就是路径,当用点(.)的时候表示当前路径(程序所在路径);
echo 注意:
echo 指定一个路径后,此路径下以及它的所有子路径下的所有符合的文件都会被改名;
echo ----------------------------------------------------------
echo 例子:
echo 如你要将整个D:盘'a'开头的jpg文件都改名
echo %~n0 a* jpg D:\

echo 如你要将当前目录及其下级所有目录中的所有jpg文件都改名
echo %~n0 * jpg .
echo ----------------------------------------------------------
echo 恢复:
echo 每运行一次后,我都会在你指定的最高路径下建立一个可以恢复改名的".bat"文件
echo 命名为"%savefile%.bat",当然如果目录已经有这样一个文件,我会覆盖它
echo 然后你只要双击运行"%savefile%.bat"(或直接在Dos窗口运行它)就可以把最近一次改
echo 名操作恢复;
echo ----------------------------------------------------------
pause
echo 最后,可能是dos本身的问题,当文件名中包含空格的时候,dos好象会出错,只取空格前的
echo 部分为文件名,哎,当初纯dos下可没有带空格的文件的呀!
goto :EOF
:rn
set /a num+=1
if exist %~p1%num%.%2 goto :rn
ren %1 %num%.%2
echo ren %~dp1%num%.%2 %~nx1 >>%savefile%.bat

如果想给一个文件改个名字,可以用ren(rename)命令。ren命令的格式是: ren 源文件名 目的文件名 。 例如把abc.txt改成bne.dat,就可以输入 ren abc.txt bne.dat 。