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

[文件操作] 如何批量重命名例如*.ce.srt的文件呀?

我有一些字幕文件, 名字格式如下,
S01E01--It All Began.ce.srt,
S01E01--It All Began.cn.srt,
S01E01--It All Began.en.srt,
S01E02--The Sonogram At The End.ce.srt,
S01E02--The Sonogram At The End.cn.srt,
S01E02--The Sonogram At The End.en.srt,
S01E03--The Thumb.ce.srt...

分别表示中英/中/英类型的字幕文件. 现在我想把其中的中英字幕单独提出来改名, 也就是把".ce"去掉
[S01E01--It All Began.ce.srt] -> [S01E01--It All Began.srt],

有什么好用的处理方法吗? 请大哥们不吝赐教! 谢谢!

  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. for /f "delims=" %%i in ('dir *.ce.srt /a-d /b') do (
  4. set i=%%i
  5. ech ren !i! !i:~0,-7!.srt
  6. )
  7. pause>nul
复制代码
屏幕上的信息正确了就把echo去掉

[ 本帖最后由 yslyxqysl 于 2009-8-26 13:13 编辑 ]

TOP

回复 2楼 的帖子

多谢,刚才参照了坛子上的一个老帖,
http://bbs.bathome.net/viewthrea ... =%CE%C4%BC%FE%C3%FB

我用了如下代码, 也搞定了. 呵呵

@echo off
for %%a in (*.ce.srt) do (
  set "OldName=%%a"
  setlocal enabledelayedexpansion
  ren "%%a" "!OldName:~0,-7!.srt"
  endlocal
)
pause

TOP

返回列表