找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23550|回复: 5

[文件操作] [已解决]批处理把文件夹中的名给所有文件命名

[复制链接]
发表于 2013-12-16 00:22:41 | 显示全部楼层 |阅读模式
本帖最后由 2227226022 于 2013-12-16 16:02 编辑

批处理把文件夹中的名给所有文件命名(包含所有子文件)

文件夹的名字命名该文件夹下的文件,举个例子来说吧:
文件夹:刘继业 下有N个文件:没有你的日子.mp3    日子的腹.mp3    习惯一个人.mp3
子文件文件夹:刘金龙 下有N个文件:你的日子.mP4   日子.mp3    一个人.mp4
改成后。。刘继业-没有你的日子.mp3    刘继业-日子的腹.mp3    刘继业-习惯一个人.mp3  
               刘金龙-你的日子.mP4   刘金龙-日子.mp3    刘金龙-一个人.mp4
用代码批量命名,谢谢 批处理要包括所有子文件夹

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2013-12-16 08:26:26 | 显示全部楼层
  1. @echo off
  2. for /d %%i in (*) do (
  3.     pushd "%%i"
  4.     for %%j in ("%%i\*") do (
  5.         ren "%%j" "%%~nxi-%%~nxj"
  6.     )
  7.     popd
  8. )
复制代码
 楼主| 发表于 2013-12-16 15:35:49 | 显示全部楼层
处理不了.谢谢大哥
 楼主| 发表于 2013-12-16 15:45:34 | 显示全部楼层
D:.
├─文件夹
│─ 新建文件.bat

├─a文件夹
│  ├─刘金龙
    没有你的日子.mp3   
│  ├─刘继业
    你的日子.mp3   
处理后的文件名:
├─文件夹
│─ 新建文件夹.bat

├─a文件夹

│  ├─刘金龙
     刘金龙-没有你的日子.mp3
│  ├─刘继业
   刘继业-你的日子.mp3   
  
总之目录文件包括所有子文件夹都处理.谢谢
发表于 2013-12-16 15:51:53 | 显示全部楼层

  1. @echo off&setlocal enabledelayedexpansion
  2. set "dp=%~dp0"
  3. for /f "delims=" %%a in ('dir /b/s/a-d *.mp3 *.mp4') do (
  4.     set "str=%%a"
  5.     set "str=!str:%dp%=!"
  6.     if /I not "!str!"=="%%~nxa" (
  7.        for /f "delims=" %%i in ("!str:\%%~nxa=!") do ren "%%a" "%%~nxi-%%~nxa"
  8.     )
  9. )
复制代码

评分

参与人数 1技术 +1 收起 理由
2227226022 + 1 谢谢大哥的帮助.已解决

查看全部评分

 楼主| 发表于 2013-12-16 16:00:41 | 显示全部楼层
谢谢两位大哥的帮助.已解决
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 20:09 , Processed in 0.032620 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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