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

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

如何实现将某文件夹下的子文件夹的中的图片移动到上层文件夹?再次感谢!

本帖最后由 pcl_test 于 2015-3-3 14:37 编辑

回复 1# SandraRusso
参考,测试前先备份原文件
http://www.bathome.net/thread-34504-1-1.html

TOP

回复 2# pcl_test


    'dir /b /ad /s^|sort /r'为什么报错呢?无法运行!

TOP

回复 3# SandraRusso

这不是你系统一直以来的问题吗?简单点避免用dir
  1. move *.jpg .\..
复制代码

TOP

回复 4# pcl_test


    还是您了解我呀!您能帮我完善下整体代码么?感谢了

TOP

回复 4# pcl_test


    主要是如果将move处理文件一个一个放到根目录下运行有点繁琐呀!

TOP

回复 4# pcl_test


    现在当前需要处理的文件夹内有10多个子文件夹,子文件夹下包含图片文件!如果放在这10多个子文件夹下如何修改代码呢?

TOP

本帖最后由 pcl_test 于 2015-3-3 15:30 编辑

回复 6# SandraRusso
需要子文件夹的路径列表就可以,这样可以避免用dir,也就是
  1. move "子文件完整路径\*.jpg" "子文件完整路径.\.."
复制代码

TOP

回复 8# pcl_test


    您可以给我示范一个列子不?我对这个不太懂,谢谢您!

TOP

本帖最后由 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\"
复制代码

TOP

回复 10# pcl_test


    不过现在我这有个问题是比如像您举的例子3子文件夹下还包含10个不同的文件夹(10个文件夹名字不同),想将这最后这10个文件夹下的图片移动到和这10个文件夹一级的目录,要怎么写呢?给您添麻烦啦!

TOP

回复 11# SandraRusso
10个文件夹一级的目录,什么意思?移到D:\1\吗?

TOP

回复 12# pcl_test


    就是移动到D:1\2\3\下,然后3文件夹下的10个空文件夹就没什用了!

TOP

回复 12# pcl_test


    您理解我的意思了没?

TOP

本帖最后由 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
复制代码

TOP

返回列表