[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
回复 20# wqj


我写的代码不需要你重复的发出来。因为这对于我理解你的需求没有任何帮助。
我只需要知道需求是怎样。哪里的文件名换成这样?移动之前还是移动之后?
文字加截图描述清楚你的需求就够了。
具体步骤请看2楼。
测试代码之前请做好备份

TOP

回复 9# ShowCode


       大神麻烦再请教一下?文件名换成这样,您写的代码怎么修改!
新0001.jpg
新0002.jpg
新0003.jpg
新0004.jpg
新0025.jpg
新0029.jpg
新0058.jpg
新0112.jpg
新0113.jpg
新0116.jpg
文件名始终保留4位数字
@echo off
cd /d "%~dp0"
setlocal enabledelayedexpansion
set "MaxNum=2"
for /l %%i in (1,1,10) do (
    md "%%i" 2>nul
    set "FileNum=0"
    for /l %%j in (1,1,100) do (
        if !FileNum! lss !MaxNum! (
            if exist "新 (%%j).jpg" (
                move "新 (%%j).jpg" "%%i\"
                set /a FileNum+=1
            ) else if exist "新 (%%j).jpeg" (
                move "新 (%%j).jpeg" "%%i\"
                set /a FileNum+=1
            ) else if exist "新 (%%j).png" (
                move "新 (%%j).png" "%%i\"
                set /a FileNum+=1
            ) else if exist "新 (%%j).bmp" (
                move "新 (%%j).bmp" "%%i\"
                set /a FileNum+=1
            )
        )
    )
)

TOP

回复 18# wqj


    请按照2楼的步骤操作
测试代码之前请做好备份

TOP

本帖最后由 wqj 于 2023-12-12 10:07 编辑

回复 11# ShowCode


    大神麻烦再请教一下?文件名换成这样,您写的代码怎么修改!
新0001.jpg
新0002.jpg
新0003.jpg
新0004.jpg
新0025.jpg
新0029.jpg
新0058.jpg
新0112.jpg
新0113.jpg
新0116.jpg
文件名始终保留4位数字
@echo off
cd /d "%~dp0"
setlocal enabledelayedexpansion
set "MaxNum=2"
for /l %%i in (1,1,10) do (
    md "%%i" 2>nul
    set "FileNum=0"
    for /l %%j in (1,1,100) do (
        if !FileNum! lss !MaxNum! (
            if exist "新 (%%j).jpg" (
                move "新 (%%j).jpg" "%%i\"
                set /a FileNum+=1
            ) else if exist "新 (%%j).jpeg" (
                move "新 (%%j).jpeg" "%%i\"
                set /a FileNum+=1
            ) else if exist "新 (%%j).png" (
                move "新 (%%j).png" "%%i\"
                set /a FileNum+=1
            ) else if exist "新 (%%j).bmp" (
                move "新 (%%j).bmp" "%%i\"
                set /a FileNum+=1
            )
        )
    )
)

TOP

回复 15# ShowCode


    拜谢大神!

TOP

已解决,感谢大神帮助!

TOP

回复 14# wqj


图片顺序不连续V1.3.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. set "MaxNum=2"
  5. for /l %%i in (10,-1,1) do (
  6.     md "新建 (%%i)" 2>nul
  7.     set "FileNum=0"
  8.     for /l %%j in (1,1,100) do (
  9.         if !FileNum! lss !MaxNum! (
  10.             if exist "%%j.jpg" (
  11.                 move "%%j.jpg" "新建 (%%i)\"
  12.                 set /a FileNum+=1
  13.             ) else if exist "%%j.jpeg" (
  14.                 move "%%j.jpeg" "新建 (%%i)\"
  15.                 set /a FileNum+=1
  16.             ) else if exist "%%j.png" (
  17.                 move "%%j.png" "新建 (%%i)\"
  18.                 set /a FileNum+=1
  19.             ) else if exist "%%j.bmp" (
  20.                 move "%%j.bmp" "新建 (%%i)\"
  21.                 set /a FileNum+=1
  22.             )
  23.         )
  24.     )
  25. )
复制代码
测试代码之前请做好备份

TOP

如上代码每个文件夹移动进去2张 图片 ,怎样实现逆序放入文件夹?
1-2.jpg复制进文件夹10
3-4.jpg复制进文件夹9
5-6.jpg复制进文件夹8
7-8.jpg复制进文件夹7
9-10.jpg复制进文件夹6

TOP

回复 12# wqj


图片顺序不连续V1.2.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. set "MaxNum=2"
  5. for /l %%i in (1,1,10) do (
  6.     md "新建 (%%i)" 2>nul
  7.     set "FileNum=0"
  8.     for /l %%j in (1,1,100) do (
  9.         if !FileNum! lss !MaxNum! (
  10.             if exist "%%j.jpg" (
  11.                 move "%%j.jpg" "新建 (%%i)\"
  12.                 set /a FileNum+=1
  13.             ) else if exist "%%j.jpeg" (
  14.                 move "%%j.jpeg" "新建 (%%i)\"
  15.                 set /a FileNum+=1
  16.             ) else if exist "%%j.png" (
  17.                 move "%%j.png" "新建 (%%i)\"
  18.                 set /a FileNum+=1
  19.             ) else if exist "%%j.bmp" (
  20.                 move "%%j.bmp" "新建 (%%i)\"
  21.                 set /a FileNum+=1
  22.             )
  23.         )
  24.     )
  25. )
复制代码
测试代码之前请做好备份

TOP

回复 11# ShowCode

抱歉,我搞错了,是文件夹名改成这样怎么修改。再帮帮忙,万分感谢!
新建(1)-
新建 (2)-
新建 (3)-
新建(4)-
新建 (5)-
新建 (6)-
新建 (7)-
新建 (8)-
新建 (9)-
新建 (10)-

TOP

回复 10# wqj


图片顺序不连续V1.1.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. set "MaxNum=2"
  5. for /l %%i in (1,1,10) do (
  6.     md "%%i" 2>nul
  7.     set "FileNum=0"
  8.     for /l %%j in (1,1,100) do (
  9.         if !FileNum! lss !MaxNum! (
  10.             if exist "新 (%%j).jpg" (
  11.                 move "新 (%%j).jpg" "%%i\"
  12.                 set /a FileNum+=1
  13.             ) else if exist "新 (%%j).jpeg" (
  14.                 move "新 (%%j).jpeg" "%%i\"
  15.                 set /a FileNum+=1
  16.             ) else if exist "新 (%%j).png" (
  17.                 move "新 (%%j).png" "%%i\"
  18.                 set /a FileNum+=1
  19.             ) else if exist "新 (%%j).bmp" (
  20.                 move "新 (%%j).bmp" "%%i\"
  21.                 set /a FileNum+=1
  22.             )
  23.         )
  24.     )
  25. )
复制代码
测试代码之前请做好备份

TOP

回复 9# ShowCode


    感谢帮助,完美实现!
弱弱的再问一下?文件名换成这样,代码怎么修改!
新 (1).jpg
新 (2).jpg
新 (3).jpg
新 (4).jpg
新 (5).jpg
新 (6).jpg
新 (7).jpg
新 (8).jpg
新 (9).jpg
新 (10).jpg

TOP

回复 6# wqj


图片顺序不连续V2.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. set "MaxNum=2"
  5. for /l %%i in (1,1,10) do (
  6.     call :HandleFolder %%i
  7. )
  8. :HandleFolder
  9. md "%1" 2>nul
  10. set "FileNum=0"
  11. for /l %%j in (1,1,100) do (
  12.     if !FileNum! lss !MaxNum! (
  13.         if exist "%%j.jpg" (
  14.             move "%%j.jpg" "%1\"
  15.             set /a FileNum+=1
  16.         ) else if exist "%%j.jpeg" (
  17.             move "%%j.jpeg" "%1\"
  18.             set /a FileNum+=1
  19.         ) else if exist "%%j.png" (
  20.             move "%%j.png" "%1\"
  21.             set /a FileNum+=1
  22.         ) else if exist "%%j.bmp" (
  23.             move "%%j.bmp" "%1\"
  24.             set /a FileNum+=1
  25.         )
  26.     ) else (
  27.         goto :eof
  28.     )
  29. )
复制代码
测试代码之前请做好备份

TOP

回复 6# wqj


图片顺序不连续V1.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. set "MaxNum=2"
  5. for /l %%i in (1,1,10) do (
  6.     md "%%i" 2>nul
  7.     set "FileNum=0"
  8.     for /l %%j in (1,1,100) do (
  9.         if !FileNum! lss !MaxNum! (
  10.             if exist "%%j.jpg" (
  11.                 move "%%j.jpg" "%%i\"
  12.                 set /a FileNum+=1
  13.             ) else if exist "%%j.jpeg" (
  14.                 move "%%j.jpeg" "%%i\"
  15.                 set /a FileNum+=1
  16.             ) else if exist "%%j.png" (
  17.                 move "%%j.png" "%%i\"
  18.                 set /a FileNum+=1
  19.             ) else if exist "%%j.bmp" (
  20.                 move "%%j.bmp" "%%i\"
  21.                 set /a FileNum+=1
  22.             )
  23.         )
  24.     )
  25. )
复制代码
测试代码之前请做好备份

TOP

[img][/img]

TOP

返回列表