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

[文件操作] [已解决]批处理怎么把文件从子目录移动到上一级目录?

本帖最后由 gm8800 于 2015-3-17 13:44 编辑

X:\DDDD\XXXXX\111\BBB\文件名\文件名.zip
X:\DDDD\XXXXX\111\BBB\中国\中国.zip
X:\DDDD\XXXXX\123abc\BBB\ABCABC123123\ABCABC123123.zip
X:\DDDD\XXXXX\123abc\BBB\888888\888888.zip

怎么把文件移动到上一级目录,然后再把存放他的目录删除(这个好实现,就删除空文件夹就可以了)做好之后是下面这样
X:\DDDD\XXXXX\111\BBB\文件名.zip
X:\DDDD\XXXXX\111\BBB\中国.zip
X:\DDDD\XXXXX\123abc\BBB\ABCABC123123.zip
X:\DDDD\XXXXX\123abc\BBB\888888.zip

本帖最后由 pcl_test 于 2016-11-19 17:05 编辑

回复 1# gm8800
  1. @echo off
  2. for /f "delims=" %%i in ('dir /s/b/a-d') do (
  3. if "%%~nxi"=="%~nx0" (echo bat本身不执行移动) else (move "%%i" "%%~dpi./..")
  4. )
  5. for /f "tokens=*" %%a in ('dir /b /ad /s^|sort /r') do (rd "%%a" 2>nul)
  6. echo 移动完成……
  7. pause
复制代码

TOP

回复 2# pcl_test


    这个批处理是不是必须放在X:\DDDD\XXXXX\目录下运行才可以?

TOP

本帖最后由 pcl_test 于 2016-11-19 17:02 编辑

回复 3# gm8800
直接在要移动的子文件夹里运行,如你要将X:\DDDD\XXXXX\111\BBB\文件名\文件名.zip移动到X:\DDDD\XXXXX\111\BBB\,那么把批处理放到X:\DDDD\XXXXX\111\BBB\里运行

TOP

回复 4# pcl_test


    我放在X:\DDDD\XXXXX\目录下运行,全乱套了:'( 该移动的不该移动全移动了

TOP

你运行 cmd 输入 cd. cd..   cd/就知道怎么回事了

TOP

回复 2# pcl_test


"%%~dpi./.."你把这里设置对了就好了

TOP

返回列表