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

[文本处理] 【已解决】批处理重命名当前文件夹里的文件名

[复制链接]
发表于 2025-6-30 13:41:02 | 显示全部楼层 |阅读模式
本帖最后由 chishingchan 于 2025-6-30 19:38 编辑

当前目录下,有一批文件,例如:
123bcd.htm.utf8_s2twp.txt
243a23.htm.utf8_s2twp.txt
abcz.htm.utf8_s2twp.txt
cbabc.htm.utf8_s2twp.txt
...
现在需要将文件重命名为:
123bcd.htm
243a23.htm
abcz.htm
cbabc.htm
...
即将后面的 .utf8_s2twp.txt 去掉,请问用批处理如何解决?谢谢!
发表于 2025-6-30 14:37:27 | 显示全部楼层
回复 1# chishingchan

  1. @echo off &setlocal &for /f "delims=" %%F in ('dir /b/a-d *.utf8_s2twp.txt') do (
  2.    set "F=%%F" &set "nxF=%%~nxF" &setlocal enabledelayedexpansion
  3.    ren "!F!" "!nxF:.utf8_s2twp.txt=!" &endlocal )
  4. pause&exit/b
复制代码

评分

参与人数 1技术 +1 收起 理由
chishingchan + 1 谢谢!

查看全部评分

 楼主| 发表于 2025-6-30 15:05:06 | 显示全部楼层
回复 2# aloha20200628


    能不能精简一些,例如去掉 setlocal enabledelayedexpansion,谢谢!
发表于 2025-6-30 15:28:32 | 显示全部楼层
本帖最后由 aloha20200628 于 2025-6-30 16:19 编辑

回复 3# chishingchan

确保文件名被保留的部分均如 abc.xyz 这类被 . 字符分割的双字段格式,即可简化如下

  1. @echo off &for /f "delims=" %%F in ('dir /b/a-d *.utf8_s2twp.txt') do for /f "tokens=1-2 delims=." %%a in ("%%~nF") do ren "%%F" "%%a.%%b"
  2. pause&exit/b
复制代码
再简化一步...

  1. @echo off &for /f "tokens=1-2* delims=." %%a in ('dir /b/a-d *.utf8_s2twp.txt') do ren "%%a.%%b.%%c" "%%a.%%b"
  2. pause&exit/b
复制代码

评分

参与人数 1技术 +1 收起 理由
chishingchan + 1 谢谢!

查看全部评分

发表于 2025-6-30 18:07:17 | 显示全部楼层
简单点的重命名:
  1. ren *htm.utf8_s2twp.txt *htm
复制代码

评分

参与人数 1技术 +1 收起 理由
chishingchan + 1 谢谢!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 07:06 , Processed in 0.028754 second(s), 14 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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