Board logo

标题: [文件操作] BAT提取文件夹内所有文件夹内的图片 [打印本页]

作者: 朱科技    时间: 2021-5-21 13:50     标题: BAT提取文件夹内所有文件夹内的图片

一个文件夹内 有100个文件夹,每个文件夹中有若干图片,想把图片全部提取出来按顺序排列
作者: kangkangsz    时间: 2021-5-21 16:43

forfiles 命令, for 命令, dir, MOVE 组合,应该都可以,  可以自学一下
作者: 1152    时间: 2021-5-21 21:46

回复 2# kangkangsz


    他要代码
作者: Batcher    时间: 2021-5-21 22:14

回复 1# 朱科技


    按什么顺序排列?
作者: 1152    时间: 2021-5-22 09:45

回复 4# Batcher


    顺序!就是Windows的字母排序,像这样:
16435.txt
a2ca.txt
您好.txt

作者: 朱科技    时间: 2021-5-22 12:50

回复 4# Batcher


    从第一个文件夹提取,接着提取第二个,第三个…………
作者: 朱科技    时间: 2021-5-22 12:51

回复 4# Batcher

按文件名排序
作者: 1152    时间: 2021-5-22 13:24

回复 7# 朱科技


    那就是Windows的默认排序咯
作者: 1152    时间: 2021-5-22 13:25

回复 7# 朱科技


    这和直接移动有什么区别?
作者: xp3000    时间: 2021-5-22 13:53

  1. echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=*" %%i in ('dir /b /ad /s *') do (
  3.     pushd %%i&set Num=1001&echo 进入 %%i
  4.     for /f "delims=" %%j in ('"dir /b/a-d/on *.jpg *.jpeg *.png"') do (
  5.         if !Num! LSS 1000 (ren "%%j" "!Num:~-3!%%~xj") else ren "%%j" "!Num:~-3!%%~xj"
  6.         echo %%j 重命名为 !Num:~-3!%%~xj&set /a Num+=1
  7.     )
  8.     popd
  9. )
  10. pause
复制代码
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=*" %%i in ('dir/s/b/ad *') do (
  3.     pushd %%i&set Num=1&echo 进入 %%i
  4.     for /f "delims=" %%j in ('dir /b/a-d/oN "*.jpg"') do (
  5.         if !Num! LSS 1000 (ren "%%j" "!Num!%%~xj") else ren "%%j" "!Num!%%~xj"
  6.         echo %%j 重命名为 !Num!%%~xj&set /a Num+=1
  7.     )
  8.     popd
  9. )
  10. pause
复制代码

作者: xp3000    时间: 2021-5-22 13:54

以上非提取排列分组,而是直接重命名
作者: 朱科技    时间: 2021-5-22 15:15

回复 10# xp3000


    同样也感谢
作者: smss    时间: 2021-5-22 15:55

本帖最后由 smss 于 2021-5-22 16:00 编辑
  1. @Echo off&SetLocal EnableDelayedExpansion&set n=0
  2. for /r %%i in (*.bmp,*.jpg,*.gif,*.png,*.ico)do set/a n+=1&ren "%%i" "!n!%%~xi"&move "%%~dpi!n!%%~xi" "%~dp0"
  3. echo 批量重命名移动完成!
  4. pause
复制代码
图片有时间字母等顺序
如果只是字母顺序只需要移动就好了 但此时就会有重名问题
作者: 1152    时间: 2021-5-22 17:30

回复 13# smss


    可以用if检测一下




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2