批处理更改文件夹内的文件名
我想批量修改很多个文件夹内的文件名,比如说:文件夹名:加勒比海盗文件夹内有个名为a.rmvb的文件我想要把文件夹内a.rmvb改成加勒比海盗.rmvb如果文件夹内有两个文...
我想批量修改很多个文件夹内的文件名,比如说:
文件夹名:加勒比海盗
文件夹内有个名为 a.rmvb 的文件
我想要把文件夹内a.rmvb 改成 加勒比海盗.rmvb
如果文件夹内有两个文件的话就改为 加勒比海盗1.rmvb 加勒比海盗2.rmvb
我有很多个这样的文件夹,如何批量把文件夹的名字加到文件夹内文件的名字上。
这个批处理文件怎么写?
问题补充:
ren \加勒比海盗\a.rmvb 加勒比海盗.rmvb
这样是不行的,我是要批处理自动把文件夹的名字写到文件夹内文件上面的,因为我有几千个文件夹啊!!!
回答者可以参考:http://zhidao.baidu.com/question/49486967.html?si=1 这个问题的答案
也可以照着这个问题改一下批处理。
yinheyu2的答案几乎已经很完美了,不过跟我要求还有一点差别,
按照你做的批处理,如果我 加勒比海盗 文件夹内有一个文件 a.rmvb 的话,就会被重命名为 加勒比海盗1.rmvb
而我的意思是如果有一个文件的话就会重名为 加勒比海盗.rmvb 而不是 加勒比海盗1.rmvb 如果有两个文件才会被重命名为 加勒比海盗1.rmvb 和 加勒比海盗2.rmvb
希望yinheyu2能改一下,或者其他知道答案的人帮我改一下。 展开
文件夹名:加勒比海盗
文件夹内有个名为 a.rmvb 的文件
我想要把文件夹内a.rmvb 改成 加勒比海盗.rmvb
如果文件夹内有两个文件的话就改为 加勒比海盗1.rmvb 加勒比海盗2.rmvb
我有很多个这样的文件夹,如何批量把文件夹的名字加到文件夹内文件的名字上。
这个批处理文件怎么写?
问题补充:
ren \加勒比海盗\a.rmvb 加勒比海盗.rmvb
这样是不行的,我是要批处理自动把文件夹的名字写到文件夹内文件上面的,因为我有几千个文件夹啊!!!
回答者可以参考:http://zhidao.baidu.com/question/49486967.html?si=1 这个问题的答案
也可以照着这个问题改一下批处理。
yinheyu2的答案几乎已经很完美了,不过跟我要求还有一点差别,
按照你做的批处理,如果我 加勒比海盗 文件夹内有一个文件 a.rmvb 的话,就会被重命名为 加勒比海盗1.rmvb
而我的意思是如果有一个文件的话就会重名为 加勒比海盗.rmvb 而不是 加勒比海盗1.rmvb 如果有两个文件才会被重命名为 加勒比海盗1.rmvb 和 加勒比海盗2.rmvb
希望yinheyu2能改一下,或者其他知道答案的人帮我改一下。 展开
3个回答
展开全部
兄弟,代码没有问题,你复制这一段的时候,将每一行后面的空格删掉!尤其是:set a=1 这一行后面的空格!
补充:老兄,调试了两个小时啊,不过终于搞出来了,挺高兴的,呵呵
修改后的代码:
@echo off
setlocal EnableDelayedExpansion
for /f "delims=" %%a in ('dir/b/ad') do (
set a=1
for /f "delims=" %%i in ('dir/b/a-d "%%~na\*.*"') do (
if !a!==1 ren "%%~na\%%~nxi" "%%~na%%~xi"
if !a!==2 (
ren "%%~na\%%~na%%~xi" "%%~na1%%~xi"
ren "%%~na\%%~nxi" "%%~na!a!%%~xi"
)
if !a! gtr 2 ren "%%~na\%%~nxi" "%%~na!a!%%~xi"
set /a a+=1
)
)
echo 重命名完毕,按任意键结束
pause>nul
按照楼主的意思做的代码,功能是将文件夹加勒比海盗中的文件重命名为加勒比海盗1,加勒比海盗2,加勒比海盗3……
将aa文件夹中的文件重命名为aa1,aa2,aa3……
只要你将下面代码做成bat文件,然后将它和你那几千个文件夹放在同一个目录下,双击运行就可以了
@echo off
setlocal EnableDelayedExpansion
for /f "delims=" %%a in ('dir/b/ad') do (
set a=1
for /f "delims=" %%i in ('dir/b/a-d "%%~na\*.*"') do (
ren "%%~na\%%~nxi" "%%~na!a!%%~xi"
set /a a+=1
))
echo 重命名完毕,按任意键结束
pause>nul
补充:老兄,调试了两个小时啊,不过终于搞出来了,挺高兴的,呵呵
修改后的代码:
@echo off
setlocal EnableDelayedExpansion
for /f "delims=" %%a in ('dir/b/ad') do (
set a=1
for /f "delims=" %%i in ('dir/b/a-d "%%~na\*.*"') do (
if !a!==1 ren "%%~na\%%~nxi" "%%~na%%~xi"
if !a!==2 (
ren "%%~na\%%~na%%~xi" "%%~na1%%~xi"
ren "%%~na\%%~nxi" "%%~na!a!%%~xi"
)
if !a! gtr 2 ren "%%~na\%%~nxi" "%%~na!a!%%~xi"
set /a a+=1
)
)
echo 重命名完毕,按任意键结束
pause>nul
按照楼主的意思做的代码,功能是将文件夹加勒比海盗中的文件重命名为加勒比海盗1,加勒比海盗2,加勒比海盗3……
将aa文件夹中的文件重命名为aa1,aa2,aa3……
只要你将下面代码做成bat文件,然后将它和你那几千个文件夹放在同一个目录下,双击运行就可以了
@echo off
setlocal EnableDelayedExpansion
for /f "delims=" %%a in ('dir/b/ad') do (
set a=1
for /f "delims=" %%i in ('dir/b/a-d "%%~na\*.*"') do (
ren "%%~na\%%~nxi" "%%~na!a!%%~xi"
set /a a+=1
))
echo 重命名完毕,按任意键结束
pause>nul
展开全部
我初学的不知道有没有用
for /l %%i in (1 +1 60) do rename 路径a.rmvb
for /l %%i in (1 +1 60) do rename 路径a.rmvb
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
@echo off
set abc=c d e f g h i j k l m n o p q r s t u v w x y z
for %%i in (%abc%) do ren %%i:加勒比海盗\a.rmvb 加勒比海盗.rmvb
上面这个批处理是可以自己自动的找这个加勒比海盗的文件夹的位置,找到后重命名
如果说这个文件夹不是在根目录,那就在后面加上就可以了
set abc=c d e f g h i j k l m n o p q r s t u v w x y z
for %%i in (%abc%) do ren %%i:加勒比海盗\a.rmvb 加勒比海盗.rmvb
上面这个批处理是可以自己自动的找这个加勒比海盗的文件夹的位置,找到后重命名
如果说这个文件夹不是在根目录,那就在后面加上就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询