找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 83053|回复: 27

[文件操作] 批处理如何将最底层子文件夹下的文件移动到上层文件夹?

[复制链接]
发表于 2015-3-3 14:30:01 | 显示全部楼层 |阅读模式
如何实现将某文件夹下的子文件夹的中的图片移动到上层文件夹?再次感谢!
发表于 2015-3-3 14:36:50 | 显示全部楼层
本帖最后由 pcl_test 于 2015-3-3 14:37 编辑

回复 1# SandraRusso
参考,测试前先备份原文件
http://www.bathome.net/thread-34504-1-1.html
 楼主| 发表于 2015-3-3 14:45:22 | 显示全部楼层
回复 2# pcl_test


    'dir /b /ad /s^|sort /r'为什么报错呢?无法运行!
发表于 2015-3-3 15:03:29 | 显示全部楼层
回复 3# SandraRusso

这不是你系统一直以来的问题吗?简单点避免用dir
  1. move *.jpg .\..
复制代码
 楼主| 发表于 2015-3-3 15:08:25 | 显示全部楼层
回复 4# pcl_test


    还是您了解我呀!您能帮我完善下整体代码么?感谢了
 楼主| 发表于 2015-3-3 15:11:59 | 显示全部楼层
回复 4# pcl_test


    主要是如果将move处理文件一个一个放到根目录下运行有点繁琐呀!
 楼主| 发表于 2015-3-3 15:16:46 | 显示全部楼层
回复 4# pcl_test


    现在当前需要处理的文件夹内有10多个子文件夹,子文件夹下包含图片文件!如果放在这10多个子文件夹下如何修改代码呢?
发表于 2015-3-3 15:17:27 | 显示全部楼层
本帖最后由 pcl_test 于 2015-3-3 15:30 编辑

回复 6# SandraRusso
需要子文件夹的路径列表就可以,这样可以避免用dir,也就是
  1. move "子文件完整路径\*.jpg" "子文件完整路径.\.."
复制代码
 楼主| 发表于 2015-3-3 15:22:03 | 显示全部楼层
回复 8# pcl_test


    您可以给我示范一个列子不?我对这个不太懂,谢谢您!
发表于 2015-3-3 15:24:50 | 显示全部楼层
本帖最后由 pcl_test 于 2015-3-3 15:31 编辑

回复 9# SandraRusso
  1. ::移动D:\1\2\3文件夹里的jpg图片到D:\1\2
  2. move "D:\1\2\3\*.jpg" "D:\1\2\3\.\.."
  3. ::或
  4. move "D:\1\2\3\*.jpg" "D:\1\2\"
复制代码
 楼主| 发表于 2015-3-3 15:31:13 | 显示全部楼层
回复 10# pcl_test


    不过现在我这有个问题是比如像您举的例子3子文件夹下还包含10个不同的文件夹(10个文件夹名字不同),想将这最后这10个文件夹下的图片移动到和这10个文件夹一级的目录,要怎么写呢?给您添麻烦啦!
发表于 2015-3-3 15:35:08 | 显示全部楼层
回复 11# SandraRusso
10个文件夹一级的目录,什么意思?移到D:\1\吗?
 楼主| 发表于 2015-3-3 15:43:15 | 显示全部楼层
回复 12# pcl_test


    就是移动到D:1\2\3\下,然后3文件夹下的10个空文件夹就没什用了!
 楼主| 发表于 2015-3-3 15:56:27 | 显示全部楼层
回复 12# pcl_test


    您理解我的意思了没?
发表于 2015-3-3 16:03:42 | 显示全部楼层
本帖最后由 pcl_test 于 2015-3-3 17:15 编辑

回复 14# SandraRusso
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /r "D:\1\2\3\" %%a in (.) do (
  4. set "fdir=%%a"
  5. set "fdir=!fdir:~,-1!"
  6. echo !fdir!
  7. if not "!fdir!" == "D:\1\2\3\" (
  8. move /y "!fdir!*.jpg" "!fdir!.\.."
  9. rem rd "!fdir!" /q
  10. )
  11. )
  12. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-23 02:08

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表