无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 3707|回复: 5
打印 上一主题 下一主题

[求助] 求精通批处理的各位大侠帮忙指导个批处理

[复制链接]
跳转到指定楼层
1#
发表于 2013-9-16 00:03:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
需求:近期整理硬盘,发现了大量mp3文件,希望能建目录分类一下。
要求:
1、mp3的文件名格式为*** - ###.mp3,其中***和###中有可能带空格
2、希望根据***来建立目录,然后把同名(***)的文件移动到该目录(或者拷贝进去也行)
3、一个或多个批处理都行
以上,自己试了一下,搞不定啊(尤其对于带空格的),求哪位大侠帮忙,拜谢
2#
发表于 2013-9-21 17:30:23 | 只看该作者

首先说下,我自己没试, 如果*** 名中间有空格的话,可能歌手名不全。
::思路楼主说以-为分格符,可能存在空格,所以都添加了, for 语句默认取分截符号的前置所以没有tokens,
::严谨点的建议用变量延迟,把那些有符号的歌手中整理从纯文字

  1. @echo off
  2. pushd "%~0"
  3. for /f "delims=- " %%i in ('dir /a-d/b/s *.mp3') do (
  4. :: 移动MP3文件,移动失败则创建文件夹再移
  5. ::%%~ni 抖去路径名
  6.   move /y %%i*.mp3  .\%%~ni\ || md .\%%~ni\ &&move /y  %%i*.mp3  .\%%~ni\

  7. )
复制代码

点评

多谢,搞定了。无忧真是卧虎藏龙啊。 3楼的也可以  详情 回复 发表于 2013-9-30 12:46
回复

使用道具 举报

3#
发表于 2013-9-26 16:13:51 | 只看该作者
本帖最后由 terse 于 2013-9-26 16:25 编辑
@echo off
set ph=f:\mp3
pushd "%ph%\"
for /f "delims=" %%i in ('dir /a-d/b/s *-*.mp3') do (
    for /f "delims=-" %%j in ("%%~ni") do (
        md "%%~dpi\%%j" 2>nul
        move "%%i" "%%~dpi\%%j"
    )
)
pause
        Terse发表于:  2013-09-26  16:25

点评

多谢,搞定了。无忧真是卧虎藏龙啊。 你的和2楼的都试了,都能达到要求  详情 回复 发表于 2013-9-30 12:47
回复

使用道具 举报

4#
 楼主| 发表于 2013-9-30 12:46:39 | 只看该作者
x9tian 发表于 2013-9-21 17:30
首先说下,我自己没试, 如果*** 名中间有空格的话,可能歌手名不全。
::思路楼主说以-为分格符,可能存 ...

多谢,搞定了。无忧真是卧虎藏龙啊
3楼的也可以
回复

使用道具 举报

5#
 楼主| 发表于 2013-9-30 12:47:16 | 只看该作者
terse 发表于 2013-9-26 16:13

多谢,搞定了。无忧真是卧虎藏龙啊。
你的和2楼的都试了,都能达到要求
回复

使用道具 举报

6#
发表于 2013-9-30 14:06:54 来自手机 | 只看该作者
有一段时间没看到F大了、国庆节快乐
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-14 06:39

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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