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

[文件操作] 批处理怎样以父文件夹名命名子文件夹?

[复制链接]
 楼主| 发表于 2021-8-8 00:35:21 | 显示全部楼层
@echo off
for %%i in (%~dp0.) do set folder0=%%~ni
setlocal enabledelayedexpansion
set x=100
for %%i in (*) do (
set /a x+=1
ren "%%i" "%folder0%!x:~1!%%~xi"
)
for /d %%a in (*) do (
    ren "%%a" "%folder0%%%a"
    pushd "%folder0%%%a"
    set n=100
    for /d %%b in (*) do (
        set m=100
        set /a n+=1
        ren "%%b" "%folder0%%%a!n:~1!"
        for %%c in ("%folder0%%%a!n:~1!\*") do (
            set /a m+=1
            ren "%%c" "%folder0%%%a!n:~1!-!m:~1!%%~xc"
        )
        set m=100
    )
    set n=100
    popd
)
@echo off
setlocal ENABLEDELAYEDEXPANSION
for /f %%i in ('dir /b /ad') do (
set /a num=0
for /f %%x in ('dir /b %%i\*.*') do (
set /a num+=1
echo %%i\%%x 重命名为 %%i^-0!num!^.*
ren "%%i\%%x" "%%i^-0!num!^.*"
))
pause
加进第3、4行,还加了原有的一段,达到了预想的效果,谢谢!嘿嘿,就是连批处理命令自己也被重命名。这已经很好了,谢谢!
发表于 2021-8-8 11:24:49 | 显示全部楼层
表述的不清楚,最好用:文件夹名a\文件夹b\文文件名c,这样的形式表述状态,并将需要的结果也用类似方式表示
发表于 2021-8-8 11:56:43 | 显示全部楼层
楼主是想得到这样的目标树,你是想将现有文件改名归类,还是仅建一个空文件就可以呢,如果是想归类,那现有文件是什么样最好告诉大家,按12楼的方法把你的目标树列出来给大家分析才可行。
武器\
武器\武器古代\
武器\武器古代\武器古代01
武器\武器古代\武器古代01\武器古代01-01
武器\武器古代\武器古代01\武器古代01-02
武器\武器现代\
武器\武器现代\武器现代01
武器\武器现代\武器现代01\武器现代01-01
武器\武器现代\武器现代01\武器现代01-02
 楼主| 发表于 2021-8-9 20:47:14 | 显示全部楼层
谢谢,受教!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 19:52 , Processed in 0.026424 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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