标题: [文件操作] 以文件夹名称命名jpg文件的bat [打印本页]
作者: gprichard 时间: 2021-11-8 21:51 标题: 以文件夹名称命名jpg文件的bat
那个懂bat的大佬帮我写一个bat:
一级文件夹下有很多个二级文件夹,二级文件夹下有很多个三级文件夹,三级文件夹下有很多张图片一般少于100张图片,每张图片是以01.jpg,02.jpg..最后一张是cover是封面
现在我需要将图片以“三级文件夹的名字+现有图片序号”重命名,而且将最后一张重命名为“三级文件夹的名字+00”变成第一张图片了!
作者: qixiaobin0715 时间: 2021-11-8 22:37
未测试:- @echo off
- for /f "delims=" %%a in ('dir /s /b /a-d cover.jpg') do (
- ren "%%a" "00%%~xa"
- for %%i in ("%%~dpa.") do (
- pushd "%%~dpa"
- for /f "delims=" %%j ('dir /b /a-d *.jpg') do ren "%%j" "%%~nxi%%j"
- popd
- )
- )
- pause
复制代码
作者: dos大帝 时间: 2021-11-9 18:04
本帖最后由 dos大帝 于 2021-11-9 18:08 编辑
- @echo off & cd "D:\dos\一级目录"
-
- for /d %%i in (*) do (
- for /d %%j in ("%%i/*") do (
- pushd "%%i\%%j"
- for /f "delims=" %%k in ('dir "*.jpg" /b') do if "%%~xk" == ".jpg" (if "%%~nk" == "cover" (ren "%%k" "%%j+00") else (ren "%%k" "%%j+%%k"))
- popd
- )
- )
- pause
复制代码
只操作三级目录的jpg文件, 其中隐藏目录或文件不会操作(建议运行之前将第6行的最后两个 ren 用 echo 代替, 先打印看看操作文件对不对)
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |