标题: [文件操作] 【已解决】BAT怎么批量把文件夹内的所有子目录的jpg图片移动到他的父目录内呢? [打印本页]
作者: wyx567 时间: 2014-7-30 00:29 标题: 【已解决】BAT怎么批量把文件夹内的所有子目录的jpg图片移动到他的父目录内呢?
怎么批量把文件夹的所有子目录内的jpg图片移动到他的父目录内呢?
比如这样的不同目录
作者: CrLf 时间: 2014-7-30 00:32
操作不可逆,建议先用少量样本测试,确定无误再正式运行- for /r %%a in (*.jpg) do move /y "%%a" "%%~dpa..\"
复制代码
作者: wyx567 时间: 2014-7-30 00:33
目录下直接复制进*.bat文件内运行吗?
作者: wyx567 时间: 2014-7-30 00:50
实验了下,把图片全部移出来了,每个文件夹里面子目录的图片都移动到各自的父文件夹下面,能有这个效果吗?
作者: wyx567 时间: 2014-7-30 01:13
CrLf大大很快回复了:- for /r %%a in (*.jpg) do move /y "%%a" "%%~dpa..\"
复制代码
实验结果是将所有图片都移动到了一起,[attach]7501[/attach]
我的想法是将图片移动到各自的文件夹根目录内,请问怎么实现呢?
如果有可能,移动在各自目录根目录的图片重命名为“各自目录名称.xxx.jpg“这样的名字吗?xxx从001开始到002,003,004这样递增。
万分感谢!
作者: wyx567 时间: 2014-7-30 11:18
顶一顶,求帮助,谢谢了
作者: CrLf 时间: 2014-7-30 20:47
已测无误,不懂你那边什么情况
作者: wyx567 时间: 2014-7-30 22:00
回复 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
以前应该是我没表达清楚,请问这样可以吗?
谢谢!
作者: wyx567 时间: 2014-7-31 00:04
顶一顶,求帮助,谢谢了
作者: wyx567 时间: 2014-7-31 00:04
比如:
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 ……
作者: apang 时间: 2014-7-31 09:10
本帖最后由 apang 于 2014-7-31 15:49 编辑
- @echo off & setlocal enabledelayedexpansion
- pushd "D:\Test\"
- for /d %%a in (*) do (
- set n=1000
- for /f "delims=" %%b in ('dir /a-d /b /s "%%a\*.jpg"') do (
- set /a n+=1 & move "%%b" "%%a\%%a.!n:~1!%%~xb"
- )
- )
- pause
复制代码
算了,不call了
作者: wyx567 时间: 2014-7-31 16:40
回复 5# apang
神了!!!
完美运行!!
谢谢大神!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |