标题: [文件操作] [求助]批处理文件名前几个字移动文件名后 [打印本页]
作者: WDMZ 时间: 2012-9-25 17:07 标题: [求助]批处理文件名前几个字移动文件名后
把文件名前几个字移动文件名后。同时可以处理多级文件夹里文件
第一个处理如下:
A文件夹
国语-爱情-黄金分割.MP3
英语-其他-似的打开.MP3
日语-渴望-临渴掘井.MP3
处理后如下:
A文件夹
爱情-黄金分割-国语.MP3
其他-似的打开-英语.MP3
渴望-临渴掘井-日语.MP3
-----------------------------------
第二个处理是相反的
A文件夹
爱情-黄金分割-国语.MP3
处理后如下
A文件夹
国语-爱情-黄金分割.MP3
---------------------------------
第三个处理是把文件名几个字删除
A文件夹
爱情-黄金分割-国语.MP3
其他-似的打开-英语.MP3
日语-渴望-临渴掘井.MP3
处理后如下:
A文件夹
爱情-黄金分割.MP3
其他-似的打开.MP3
渴望-临渴掘井.MP3
这三个批处理不同时运行的.请高手给做下.谢谢了
作者: CrLf 时间: 2012-9-25 19:27
本帖最后由 CrLf 于 2012-9-26 02:32 编辑
运行此批生成三个bat:- @echo off&setlocal enabledelayedexpansion
- set "$1=%%%%b-%%%%c-%%%%a.%%%%d"
- set "$2=%%%%c-%%%%a-%%%%b.%%%%d"
- set "$3=%%%%a-%%%%b.%%%%d"
- for %%z in (1 2 3) do (
- echo for /f %%%%f in ('dir /s /a-d /b a\*-*-*.mp3'^) do for /f "tokens=1-4 delims=-." %%%%a in ("%%%%~nxf"^) do ren "%%%%f" "!$%%z!"
- )>%%z.bat
复制代码
单个bat,运行时自选要处理的方式:- @echo off
- set "$1=%%b-%%c-%%a.%%d"
- set "$2=%%c-%%a-%%b.%%d"
- set "$3=%%a-%%b.%%d"
- call :batch %%$1%% 1
- call :batch %%$2%% 2
- call :batch %%$3%% 3
- set /p n=输入序号:
- call :batch %%$%n%%%
- pause&exit
-
- :batch
- for /f %%f in ('dir /s /a-d /b a\*-*-*.mp3') do (
- for /f "tokens=1-4 delims=-." %%a in ("%%~nxf") do (
- if "%~2" neq "" echo %2 "%%f" --^> "%1"&exit/b
- ren "%%f" "%1"
- )
- )
复制代码
作者: WDMZ 时间: 2012-9-26 01:31
回复 2# CrLf
谢谢大哥的帮忙。
我想要的是做三个批处理。我想怎么处理就处理的。这样比较方便
三个批处理分开来做。 谢谢了
作者: WDMZ 时间: 2012-9-26 14:37
回复 2# CrLf
还是没能解决。。辛苦了
作者: WDMZ 时间: 2012-9-27 01:21
会的。请帮忙解决。谢谢了
作者: WDMZ 时间: 2012-9-27 16:12
会的请帮忙解决。谢谢了
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |