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

[文件操作] 【已解决】BAT怎么批量把文件夹内的所有子目录的jpg图片移动到他的父目录内呢?

怎么批量把文件夹的所有子目录内的jpg图片移动到他的父目录内呢?

比如这样的不同目录

操作不可逆,建议先用少量样本测试,确定无误再正式运行
  1. for /r %%a in (*.jpg) do move /y "%%a" "%%~dpa..\"
复制代码

TOP

目录下直接复制进*.bat文件内运行吗?

TOP

实验了下,把图片全部移出来了,每个文件夹里面子目录的图片都移动到各自的父文件夹下面,能有这个效果吗?

TOP

CrLf大大很快回复了:
  1. for /r %%a in (*.jpg) do move /y "%%a" "%%~dpa..\"
复制代码
实验结果是将所有图片都移动到了一起,[attach]7501[/attach]

我的想法是将图片移动到各自的文件夹根目录内,请问怎么实现呢?


如果有可能,移动在各自目录根目录的图片重命名为“各自目录名称.xxx.jpg“这样的名字吗?xxx从001开始到002,003,004这样递增。


万分感谢!

TOP

顶一顶,求帮助,谢谢了

TOP

已测无误,不懂你那边什么情况

TOP

回复 5# CrLf

你好,我想把各自子目录的图片移动到各自的根目录里面,而不是全部移动出来

比如:
c:\1\2.jpg
c:\2\3\4.jpg
c:\3\4\5\6.jpg
c:\4\5\6\7\8.jpg
……
统一移动成

c:\1\2.jpg
c:\2\4.jpg
c:\3\6.jpg
c:\4\8.jpg

以前应该是我没表达清楚,请问这样可以吗?

谢谢!

TOP

顶一顶,求帮助,谢谢了

TOP

比如:
c:\1\2.jpg
c:\2\3\4.jpg
c:\3\4\5\6.jpg
c:\4\5\6\7\8.jpg
……
统一移动成

c:\1\2.jpg
c:\2\4.jpg
c:\3\6.jpg
c:\4\8.jpg

请问这样可以吗?


如果有可能,移动在各自目录根目录的图片重命名为“各自目录名称.xxx.jpg“这样的名字吗?xxx从001开始到002,003,004这样递增。

就是:
c:\1\1.001.jpg  1.002.jpg  1.003.jpg ……
c:\2\2.001.jpg  2.002.jpg  2.003.jpg ……
c:\3\3.001.jpg  3.002.jpg  3.003.jpg ……
c:\4\4.001.jpg  4.002.jpg  4.003.jpg ……

TOP

本帖最后由 apang 于 2014-7-31 15:49 编辑
  1. @echo off & setlocal enabledelayedexpansion
  2. pushd "D:\Test\"
  3. for /d %%a in (*) do (
  4.     set n=1000
  5.     for /f "delims=" %%b in ('dir /a-d /b /s "%%a\*.jpg"') do (
  6.         set /a n+=1 & move "%%b" "%%a\%%a.!n:~1!%%~xb"
  7.     )
  8. )
  9. pause
复制代码
算了,不call了

TOP

回复 5# apang


神了!!!
完美运行!!
谢谢大神!

TOP

返回列表