标题: [文件操作] 请问BAT怎么批量改名并移动到同名的目录里? [打印本页]
作者: skaoer 时间: 2013-1-22 18:25 标题: 请问BAT怎么批量改名并移动到同名的目录里?
本帖最后由 skaoer 于 2013-1-22 20:02 编辑
大家好,新人想求一个批处理,可以修改字幕文件并在指定目录下创建同名子目录并自动剪贴过去
例如
字幕文件在 F:\zimu\
电影文件在 F:\movie\
处理字幕文件 F:\zimu\OMG.2012.720p.chs.srt
自动删除掉文件名中的chs(这个是固定操作)变成
OMG.2012.720p.srt
并在F:\movie\下创建目录
OMG.2012.720p
然后自动把 OMG.2012.720p.srt 移动进 OMG.2012.720p 中
新人,弄半天搞不懂怎么写,求高手指教下,谢谢!
作者: apang 时间: 2013-1-22 19:09
本帖最后由 apang 于 2013-1-22 19:10 编辑
不考虑改名后有重名的情况- @echo off
- for /f "delims=" %%a in ('dir /a-d /b') do (
- for /f "delims=." %%b in ("%%~na") do (
- if "%%b" neq "%%~na" if "%~nx0" neq "%%a" (
- md "%%b" 2>nul
- move "%%a" "%%b\%%b%%~xa"
- )
- )
- )
- pause
复制代码
作者: skaoer 时间: 2013-1-22 20:04
回复 2# apang
执行可以成功,感谢,但可能我的描述有点问题,现在已经在第一帖里修改了要求,请您帮我看看,应该怎么写,谢谢!
作者: apang 时间: 2013-1-22 23:24
本帖最后由 apang 于 2013-1-22 23:27 编辑
回复 3# skaoer
保存到zimu文件夹下运行- @echo off
- for /f "delims=" %%a in ('dir /a-d /b *.chs.srt') do (
- for %%b in ("%%~na") do (
- md "..\movie\%%~nb" 2>nul
- move "%%a" "..\movie\%%~nb\%%~nb%%~xa"
- )
- )
- pause
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |