标题: [文件操作] [已解决]批处理如何更改文件名字? [打印本页]
作者: 珠七七 时间: 2013-2-2 11:32 标题: [已解决]批处理如何更改文件名字?
本帖最后由 珠七七 于 2013-2-6 20:29 编辑
新手求助。
我想把硬盘里的歌整理一下,发现有些歌名和歌手的位置倒乱了。
比如说:男人哭吧不是罪-刘德华.mp3
现需要建一个批处理,可以打开这个批处理窗口,等待操作。一但把错误的歌拉到这个批处理上,就自动读取名字,把名字更改为:刘德华-男人哭吧不是罪.mp3
我自己主要是对for命令不熟悉,所以请教一下各位,麻烦各位高手为我编一下这个批处理。十分感谢!
作者: Demon 时间: 2013-2-2 11:42
http://bbs.bathome.net/thread-2189-1-1.html
作者: ivor 时间: 2013-2-2 13:51
本帖最后由 ivor 于 2013-2-3 09:23 编辑
复制代码
作者: 珠七七 时间: 2013-2-3 01:40
- @echo off
- set name1=%~n1
- set name2=%~x1
- echo %name1%>1.txt
- for /f "tokens=1,2 delims=-" %%i in (1.txt) do echo %~n1%~x1 %%j-%%i%~x1
- pause
复制代码
这个代码运行中有些问题:
1.echo %name1%>1.txt 结果没有生成1.txt。
2.echo %~n1%~x1 %%j-%%i%~x1 结果显示正常,如:迷宫-王若琳.mp3 王若琳-迷宫.mp3,但把echo改为ren就提示:系统找不到指定的文件。
3.for /f "tokens=1,2 delims=-" %%i in (1.txt) do echo %~n1%~x1 %%j-%%i%~x1直接用这句,不要上面的的,结果也是一样。1.txt找不到的话也能正常运行下去?
有谁知道这代码错在哪里?
作者: ym04020426 时间: 2013-2-4 09:19
这个挺难的 祝你成功 xuexizhong
作者: BAT-VBS 时间: 2013-2-4 11:46
- @echo off
- for /f "tokens=1,2 delims=-" %%i in ("%~n1") do (
- echo ren "%~f1" "%%j-%%i%~x1"
- ren "%~f1" "%%j-%%i%~x1"
- )
- pause
复制代码
代码保存为test.bat
把男人哭吧不是罪-刘德华.mp3拖放到test.bat
作者: 珠七七 时间: 2013-2-6 20:28
BAT-VBS,
这个批处理的确可以实现。谢谢!
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |