找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 29233|回复: 9

[文本处理] 如何批量删除文件名最后两个字符之前的所有字符并以递增序号的方式处理重名文件?

[复制链接]
发表于 2016-2-20 00:00:01 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-4-15 22:45 编辑

有很多txt文件:
123.txt
1234.txt
12345.txt
……
----------------
只想保留文件名最后两个字:
23.txt
34.txt
45.txt
……

-------------------
大侠,如何实现
发表于 2016-2-20 09:13:44 | 显示全部楼层
本帖最后由 ivor 于 2016-2-20 12:50 编辑

回复 1# wzf1024
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir /b *.txt') do (
  3.         set "name=%%a"
  4.         rename "%%a" !name:~-6!
  5. )
  6. pause
复制代码
代码很容易,但是你的文件很多,只留两个字符,很容易会文件名重复


刚出炉的新代码:有多少重复的都没问题
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir /b *.txt') do (
  3.         set "name=%%a"
  4.         rename "%%a" "!name:~-6!" 2>nul || call :repeat
  5. )
  6. echo 已经全部处理...... & pause>nul
  7. goto :EOF
  8. :repeat
  9. set /a num+=1
  10. rename "!name!" "!name:~-6,2!(!num!)!name:~-4!" && goto :EOF || goto :repeat
复制代码

评分

参与人数 1技术 +1 收起 理由
wzf1024 + 1 乐于助人

查看全部评分

发表于 2016-2-20 10:01:43 | 显示全部楼层
  1. ren2 -f ".*(..)(\.txt)" "$1$2"
复制代码

评分

参与人数 1技术 +1 收起 理由
wzf1024 + 1 乐于助人

查看全部评分

 楼主| 发表于 2016-2-20 11:53:10 | 显示全部楼层
回复 2# ivor


    原来的条件,如果需要在出现重复文件名时后面加递增序号如何解决,
如:
1234.txt
2234.txt
替换后:
34.txt
34(1).txt

--------------------
如何实现、谢谢
 楼主| 发表于 2016-2-20 12:06:00 | 显示全部楼层
回复 3# bailong360


    大侠,这不是批处理吧,需要什么软件吗?谢谢
发表于 2016-2-20 12:20:30 | 显示全部楼层
回复 2# ivor


    -6好像不对吧
发表于 2016-2-20 12:36:08 | 显示全部楼层
回复 5# wzf1024
第三方ren2
发表于 2016-2-20 12:51:29 | 显示全部楼层
本帖最后由 ivor 于 2016-2-20 12:55 编辑

回复 1# wzf1024


    2楼代码已更新

顺便附带测试专用代码
  1. @echo off&setlocal enabledelayedexpansion
  2. rem 测试专用,生成100个xxxx66.txt
  3. for /l %%a in (1,1,100) do (
  4.         echo.>!random!66.txt
  5. )
复制代码
发表于 2016-2-20 12:52:02 | 显示全部楼层
回复 6# CrLf


    没错啊,我都测试过了
发表于 2016-2-20 18:43:14 | 显示全部楼层
回复 9# ivor


    噢,是我晕了,还要算上 .
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 23:32 , Processed in 0.022395 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表