求高人写一个vbs或者bat命令,用来照片批量重命名名N个RaR压缩为不同的名字?下面有举例,感谢!

BAT脚本如何批量重命名文件? - BAT求助&讨论 -
批处理之家 批处理_BAT_CMD_DOS_VBS_Perl_Python_PowerShell - Powered by Discuz!
帖子26&积分34&技术0 &捐助0 &注册时间&
BAT脚本如何批量重命名文件?
本帖最后由 hdhyg 于
20:07 编辑
在E:\文件\公司文件&&下面有很多.bat文件(比如有1000个),名子都不一样。
我想用批处理给里面的所有文件重命名,要改的名子从D:\1.xls表中的B2单元格内容开始提取(如b2,b3,b4...内容全部不重复),分别给E:\文件\公司文件目录下的.bat文件命名。
请高手帮忙。
用VBS也可以,
如果把exce文件格式换成TXT文件也可,
请问这2种都怎么写,
学习中,请高手不吝赐教
帖子575&积分5364&技术29 &捐助0 &注册时间&
BAT脚本不能直接读取xls文件,可以考虑用VBS脚本。
或者你把B列内容手工复制到txt里面,然后再用BAT脚本。
乐于助人PB + 5
帖子26&积分34&技术0 &捐助0 &注册时间&
BAT脚本不能直接读取xls文件,可以考虑用VBS脚本。
或者你把B列内容手工复制到txt里面,然后再用BAT脚本。
forfiles 发表于
用VBS也可以,TXT文件也可,请问这2种都怎么写,学习中
帖子60&积分116&技术15 &捐助0 &注册时间&
你的条件没有明确,比如
name.txt 里的名字是
而文件夹里的bat是
1.bat、a.bat、asdasd.bat
那是要指定名称还是可以乱命名?
指定名称 B1 对应 1.bat
乱命名,B1对应哪个都行、、
还有,如果你的名字非常有规律 B1-B999之类的,
可以考虑直接循环不需要读文件了、、
帖子60&积分116&技术15 &捐助0 &注册时间&
'**********************************************************
'多格式分类批量重命名脚本
'将同一类文件用1,2,3...的方式重命名
'Date& & :&&
'Author&&:&&乱码
'**********************************************************
ExtName = Array(&jpg&,&gif&,&txt&,&rar&) '要处理的后缀
Set fso = CreateObject(&Scripting.FileSystemObject&)
For i = <font color="# To UBound(ExtName) '分开处理不同的后缀
& & iCount = <font color="# '重命名计数
& & For Each x In fso.GetFolder(&.&).Files '遍历本目录所有文件
& && &&&If LCase(fso.GetExtensionName(x.Name)) = LCase(ExtName(i)) Then
& && && && &newName = iCount & &.& & ExtName(i) '新的文件名
& && && && &While fso.FileExists(newName) And LCase(newName) && LCase(x.Name)
& && && && && & '检查新的文件名是否存在,或者是否是自己。
& && && && && & iCount = iCount + <font color="# '存在的话,编号+1
& && && && && & newName = iCount & &.& & ExtName(i) '重新生成新的文件名
& && && && &Wend
& && && && &If LCase(newName) && LCase(x.Name) Then x.Name = newName
& && && && &'如果新文件名不等于自己,就重命名。
& && &&&End If
先贴一个我前几天写的脚本,不行我再修改、、
帖子26&积分34&技术0 &捐助0 &注册时间&
你的条件没有明确,比如
name.txt 里的名字是
而文件夹里的bat是
1.bat、a.bat、asdasd.bat ...
乱码 发表于
是我没表达清楚。。 在E:\文件\公司文件&&目录下文件名为:销售文件 - 副本 (1).bat,,.销售文件 - 副本 (2).bat。。。。一直到&&销售文件 - 副本 (800).bat
从D:\name.txt文件中一行对应一个文件名,name.txt 里的名子没有规律,一行就一个名子内容。
如:name.txt里面第1行内容改 销售文件 - 副本 (1).bat ,,,第2行内容改 销售文件 - 副本 (2).bat,,,依次类推。
& & 如附件依次对应改 在E:\文件\公司文件&&目录下文件&&销售文件 - 副本 (1).bat,,.销售文件 - 副本 (2).bat。。。。
附件: 您需要才可以下载或查看附件。没有帐号?
帖子60&积分116&技术15 &捐助0 &注册时间&
本帖最后由 乱码 于
22:19 编辑
Folder = &公司文件&
Name = &a.txt&
Set fso = CreateObject(&Scripting.FileSystemObject&)
Set re = New RegExp
re.Pattern = &\d+& '正则表达式,取源文件名的数字,为了保持编号数序、
newBats = Split(vbCrLf & fso.OpenTextFile(Name).ReadAll,vbCrLf) '新的文件名数组
On Error Resume Next
For Each file In fso.GetFolder(Folder).Files '遍历文件
& & file.Name = newBats(re.Execute(file.Name).Item(<font color="#).Value) & &.bat& '保持对应顺序的重命名
MsgBox &OK&
如果是按照你所描述那样的,那这个可以实现的、
上传不了附件,自己去下载测试数据
/file/dpsq56zn#test.rar
谢谢技术 + 1
乐于助人技术 + 1
帖子26&积分34&技术0 &捐助0 &注册时间&
本帖最后由 hdhyg 于
11:11 编辑
如果是按照你所描述那样的,那这个可以实现的、
上传不了附件,自己去下载测试数据
乱码 发表于
& & 谢谢了,可以了
帖子60&积分116&技术15 &捐助0 &注册时间&
本帖最后由 乱码 于
08:57 编辑
代码不是更新了么、一开始那个太繁琐了,不如现在这个直接简洁、
VBS报毒很正常,因为他的名声都被恶搞脚本和病毒搞坏了、
帖子26&积分34&技术0 &捐助0 &注册时间&
回复&&hdhyg
代码不是更新了么、一开始那个太繁琐了,不如现在这个直接简洁、
VBS报毒很正常,因为他的 ...
乱码 发表于
& & 谢谢高手,我刚学不懂。
帖子10&积分43&技术0 &捐助0 &注册时间&
有难度,看看。
[通过 QQ、MSN 分享给朋友]批处理怎样批量解压RAR文件? - BAT求助&讨论 -
批处理之家 批处理_BAT_CMD_DOS_VBS_Perl_Python_PowerShell - Powered by Discuz!
帖子60&积分350&技术0 &捐助0 &注册时间&
批处理怎样批量解压RAR文件?
刚才看了一篇:
批处理怎样解压缩带密码的RAR自解压文件?&D:\WinRAR\rar.exe& x -p *.exe 123\
这样批量解压如果2个压缩包内都有setup.exe,文件名相同的话就会直接覆盖了!
请问版主或其他bat高手,这123\ 后面加什么参数才能做到【解压每个压缩文件到各自单独的文件夹】
第二个问题:批处理怎样解压带不相同密码的RAR自解压文件?
c:\a.rar&&解压密码:123& &
C:\b.rar&&解压密码:234
C:\C.rar&&解压密码:345
这样三个rar文件& &,代码要怎样写才能做到批量解压?
附件下载:
[ 本帖最后由 conglin58 于
17:28 编辑 ]
帖子1745&积分4957&技术255 &捐助0 &注册时间&
第一个问题:
方法1:使用-or开关自动重命名
方法2:for %%a in (*.exe) do &D:\WinRAR\rar.exe& x -p &%%a.exe& &123\%%a\&复制代码第二个问题:代码的编写取决于文件名于与密码的规则对应情况。以楼主的示例:@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.exe& &123\&
)复制代码
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)
帖子60&积分350&技术0 &捐助0 &注册时间&
新建一个txt文档,然后把所有的解压密码都复制进去,每行一个密码,然后在进行批量解压时让rar软件读取该文件中的密码
以这样的形式能用批处理搞定吗?
帖子568&积分4043&技术3 &捐助0 &注册时间&
可以,下面这个代码由于时间来不及了我没有测试
@echo off
for %%a in (*.rar) do (
& &for /f &delims=& %%b in (pass.txt) do (
& & &D:\WinRAR\rar.exe& x -p%%b &%%a& *.* &%%a\&
)
)复制代码
努力学习,努力挣分
帖子2&积分17&技术0 &捐助0 &注册时间&
高手啊,学习了!!!
帖子1745&积分4957&技术255 &捐助0 &注册时间&
原帖由 conglin58 于
01:30 发表
新建一个txt文档,然后把所有的解压密码都复制进去,每行一个密码,然后在进行批量解压时让rar软件读取该文件中的密码
以这样的形式能用批处理搞定吗? 你测试过2楼的代码?显然你没有。你想不到、做不到,只能说你没这个能力而已,不代表别人就做不到。
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)
帖子60&积分350&技术0 &捐助0 &注册时间&
c:\a.rar&&解压密码:123& &
C:\b.rar&&解压密码:234
C:\C.rar&&解压密码:345
这样三个rar文件& &,代码要怎样写才能做到批量解压?
-----------------------------------------------------------------------------------------------
@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.exe& &123\&
-----------------------------------------------------------------------------------
RAR 3.93& & 版权 (C)
Alexander Roshal& & 15 三月 2010
已注册给 Federal Agency for Education
不能打开 a.exe
系统找不到指定的文件。
没有要解压的文件
RAR 3.93& & 版权 (C)
Alexander Roshal& & 15 三月 2010
已注册给 Federal Agency for Education
不能打开 b.exe
系统找不到指定的文件。
没有要解压的文件
RAR 3.93& & 版权 (C)
Alexander Roshal& & 15 三月 2010
已注册给 Federal Agency for Education
不能打开 c.exe
系统找不到指定的文件。
没有要解压的文件
朋友你这么有信心的让我测试怎么结果却是这样的???
原帖由 hanyeguxing 于
15:22 发表
你测试过2楼的代码?显然你没有。你想不到、做不到,只能说你没这个能力而已,不代表别人就做不到。
试问你怎么知道我没测试过呢???来论坛提问就是为了学习的,最关键的是我想到了,所以才会提问,但好像是你写的代码做不到我想要的结果???
我不怀疑你对批处理的编译能力,但却很担心你对中文的理解能力,r u chinease?
既然你是技术组成员,至少应该自己先测试一下结果吧,我也很想问问你自己测试过2楼的代码?显然你才是没有。要不然也不会有这个结果了!指责别人之前应该先审视一下自己,大家以礼相待,你又何必呢?
帖子568&积分4043&技术3 &捐助0 &注册时间&
你的压缩包里有a.exe吗
努力学习,努力挣分
帖子60&积分350&技术0 &捐助0 &注册时间&
@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.exe& &123\&
把红色的地方改成rar
@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.rar& &123\&
总算能解压了!但该批处理指定了abc这三个rar文件的密码,要是需要解压的文件多的话还是一样麻烦!
一晚上没睡觉我终于找到个软件能搞定,
帖子2&积分17&技术0 &捐助0 &注册时间&
加一个 -ad 参数,可以解压每个压缩文件到各自单独的文件夹
帖子60&积分350&技术0 &捐助0 &注册时间&
那正确的代码是不是以下这样?
for %%a in (*.exe) do &C:\Program Files\WinRAR\rar.exe&&&x -p -ad *.exe
for %%a in (*.exe) do &C:\Program Files\WinRAR\rar.exe&&&x -p &%%a& -ad *.exe
顺便问一下%%a是代表什么含义?刚才我测试了!好像是第二个批处理能顺利解压,第一个批处理不行!
请问类似这样的参数详细说明论坛有相关的帖子看看吗?
[ 本帖最后由 conglin58 于
17:26 编辑 ]
帖子8198&积分36886&技术174 &捐助510 &注册时间&
回复 11楼 的帖子
批处理for命令从入门到精通以及配套练习题
【批处理在线视频分享】
【论坛捐助】
【论坛官方QQ群】BAT群:& &VBS群:
[通过 QQ、MSN 分享给朋友]求BAT或者VBS脚本,批量重命名一个文件夹下面的文件为1 、2、3、4、5、依次等等_百度知道
求BAT或者VBS脚本,批量重命名一个文件夹下面的文件为1 、2、3、4、5、依次等等
求BAT或者VBS脚本,批量重命名一个文件夹下面的文件为1 、2、3、4、5、依次等等后缀最好不变,变了也行以前别人帮我写了一个,只能用一次。不知道为什么,再用就失效了,没什么用,谢谢啦。高手们
提问者采纳
::═════代═══码═══开═══始═════@echo off&setlocal enabledelayedexpansionset /a k=1for /f &delims=& %%i in (&#39;dir /a-d/b *.*&#39;) do (if not &%%i&==&%~nx0& (move &%%i& &!k!%%~xi&set /a k+=1))pause::═════代═══码═══结═══束═════ 包括子文件夹的:::═════代═══码═══开═══始═════@echo off&setlocal enabledelayedexpansionset /a k=1for /f &delims=& %%i in (&#39;dir /a-d/b/s *.*&#39;) do (if not &%%i&==%0 (ren &%%~dpnxi& &!k!%%~xi&set /a k+=1))pause::═════代═══码═══结═══束═════
提问者评价
哥们,你太牛X了,高手就是高手。想的也全面
来自团队:
其他类似问题
为您推荐:
vbs脚本的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁批处理怎样批量解压RAR文件? - BAT求助&讨论 -
批处理之家 批处理_BAT_CMD_DOS_VBS_Perl_Python_PowerShell - Powered by Discuz!
帖子60&积分350&技术0 &捐助0 &注册时间&
批处理怎样批量解压RAR文件?
刚才看了一篇:
批处理怎样解压缩带密码的RAR自解压文件?&D:\WinRAR\rar.exe& x -p *.exe 123\
这样批量解压如果2个压缩包内都有setup.exe,文件名相同的话就会直接覆盖了!
请问版主或其他bat高手,这123\ 后面加什么参数才能做到【解压每个压缩文件到各自单独的文件夹】
第二个问题:批处理怎样解压带不相同密码的RAR自解压文件?
c:\a.rar&&解压密码:123& &
C:\b.rar&&解压密码:234
C:\C.rar&&解压密码:345
这样三个rar文件& &,代码要怎样写才能做到批量解压?
附件下载:
[ 本帖最后由 conglin58 于
17:28 编辑 ]
帖子1745&积分4957&技术255 &捐助0 &注册时间&
第一个问题:
方法1:使用-or开关自动重命名
方法2:for %%a in (*.exe) do &D:\WinRAR\rar.exe& x -p &%%a.exe& &123\%%a\&复制代码第二个问题:代码的编写取决于文件名于与密码的规则对应情况。以楼主的示例:@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.exe& &123\&
)复制代码
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)
帖子60&积分350&技术0 &捐助0 &注册时间&
新建一个txt文档,然后把所有的解压密码都复制进去,每行一个密码,然后在进行批量解压时让rar软件读取该文件中的密码
以这样的形式能用批处理搞定吗?
帖子568&积分4043&技术3 &捐助0 &注册时间&
可以,下面这个代码由于时间来不及了我没有测试
@echo off
for %%a in (*.rar) do (
& &for /f &delims=& %%b in (pass.txt) do (
& & &D:\WinRAR\rar.exe& x -p%%b &%%a& *.* &%%a\&
)
)复制代码
努力学习,努力挣分
帖子2&积分17&技术0 &捐助0 &注册时间&
高手啊,学习了!!!
帖子1745&积分4957&技术255 &捐助0 &注册时间&
原帖由 conglin58 于
01:30 发表
新建一个txt文档,然后把所有的解压密码都复制进去,每行一个密码,然后在进行批量解压时让rar软件读取该文件中的密码
以这样的形式能用批处理搞定吗? 你测试过2楼的代码?显然你没有。你想不到、做不到,只能说你没这个能力而已,不代表别人就做不到。
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)
帖子60&积分350&技术0 &捐助0 &注册时间&
c:\a.rar&&解压密码:123& &
C:\b.rar&&解压密码:234
C:\C.rar&&解压密码:345
这样三个rar文件& &,代码要怎样写才能做到批量解压?
-----------------------------------------------------------------------------------------------
@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.exe& &123\&
-----------------------------------------------------------------------------------
RAR 3.93& & 版权 (C)
Alexander Roshal& & 15 三月 2010
已注册给 Federal Agency for Education
不能打开 a.exe
系统找不到指定的文件。
没有要解压的文件
RAR 3.93& & 版权 (C)
Alexander Roshal& & 15 三月 2010
已注册给 Federal Agency for Education
不能打开 b.exe
系统找不到指定的文件。
没有要解压的文件
RAR 3.93& & 版权 (C)
Alexander Roshal& & 15 三月 2010
已注册给 Federal Agency for Education
不能打开 c.exe
系统找不到指定的文件。
没有要解压的文件
朋友你这么有信心的让我测试怎么结果却是这样的???
原帖由 hanyeguxing 于
15:22 发表
你测试过2楼的代码?显然你没有。你想不到、做不到,只能说你没这个能力而已,不代表别人就做不到。
试问你怎么知道我没测试过呢???来论坛提问就是为了学习的,最关键的是我想到了,所以才会提问,但好像是你写的代码做不到我想要的结果???
我不怀疑你对批处理的编译能力,但却很担心你对中文的理解能力,r u chinease?
既然你是技术组成员,至少应该自己先测试一下结果吧,我也很想问问你自己测试过2楼的代码?显然你才是没有。要不然也不会有这个结果了!指责别人之前应该先审视一下自己,大家以礼相待,你又何必呢?
帖子568&积分4043&技术3 &捐助0 &注册时间&
你的压缩包里有a.exe吗
努力学习,努力挣分
帖子60&积分350&技术0 &捐助0 &注册时间&
@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.exe& &123\&
把红色的地方改成rar
@echo off&setlocal enabledelayedexpansion
for %%a in (a123,b234,c345) do (
set &a=%%a&
&D:\WinRAR\rar.exe& x -p!a:~1! -or &!a:~0,1!.rar& &123\&
总算能解压了!但该批处理指定了abc这三个rar文件的密码,要是需要解压的文件多的话还是一样麻烦!
一晚上没睡觉我终于找到个软件能搞定,
帖子2&积分17&技术0 &捐助0 &注册时间&
加一个 -ad 参数,可以解压每个压缩文件到各自单独的文件夹
帖子60&积分350&技术0 &捐助0 &注册时间&
那正确的代码是不是以下这样?
for %%a in (*.exe) do &C:\Program Files\WinRAR\rar.exe&&&x -p -ad *.exe
for %%a in (*.exe) do &C:\Program Files\WinRAR\rar.exe&&&x -p &%%a& -ad *.exe
顺便问一下%%a是代表什么含义?刚才我测试了!好像是第二个批处理能顺利解压,第一个批处理不行!
请问类似这样的参数详细说明论坛有相关的帖子看看吗?
[ 本帖最后由 conglin58 于
17:26 编辑 ]
帖子8198&积分36886&技术174 &捐助510 &注册时间&
回复 11楼 的帖子
批处理for命令从入门到精通以及配套练习题
【批处理在线视频分享】
【论坛捐助】
【论坛官方QQ群】BAT群:& &VBS群:
[通过 QQ、MSN 分享给朋友]

我要回帖

更多关于 mac批量重命名 的文章

 

随机推荐