[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批量修改文件名的批处理代码

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set /p var=请输入文件夹名称:
  4. md %var%
  5. if exist *%var%*.txt move *%var%*.txt %var%\. 1>nul 2>nul
  6. for /f %%i in ('dir /a-d /b .\%var%\*%var%*.txt') do (set /a a+=01
  7.                                                       ren .\%var%\*.txt "%var%!a!".txt)
  8. pause
复制代码
本意是想修改电影名字的,我测试的时候是新建了abcd1.txt-abcd4.txt,4个TXT文件。我假设a和d都是我不需要的信息,bc是电视剧的名字,1是电视剧的剧集,然后我就只想要bc1。因为我是网吧的服务员,我在服务器上下电视剧后,比如:电影天堂(www.dygod.com)神话01(dvd).rmvb。我要修改名字进行电影入库,很麻烦,加上现在学习批处理,所以就想写这么一个自动改名字的批处理,就写了上面这个,在运行后就出现了如下的错误,并且不能得到bc01,只能获得bc1。经再次测试,对于中文文件名也不能实现,提示无法找到文件。恳请斑竹解锁,我已经修改了标题,并PM你了
[attach]2166[/attach]
1

评分人数

    • Batcher: 感谢主动给标题标注[已解决]字样PB + 2

能否在顶楼给出报错信息?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set /p "var=请输入文件夹名称:"
  4. md "%~dp0%var%"
  5. move "%~dp0*%var%*.txt" "%~dp0%var%\"
  6. set num=100
  7. for /f "delims=" %%a in ('dir /a-d /b "%~dp0%var%\*.txt"') do (
  8.     set /a num+=1
  9.     set sufix=!num:~-2!
  10.     ren "%~dp0%var%\%%a" "%var%!sufix!.txt"
  11. )
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表