Board logo

标题: [文件操作] 如何实现复制多个不同目录下的同名文件到指定目录并以之前所在的文件夹名重命名 [打印本页]

作者: cxl832004    时间: 2017-2-24 17:23     标题: 如何实现复制多个不同目录下的同名文件到指定目录并以之前所在的文件夹名重命名

本帖最后由 pcl_test 于 2017-2-27 13:36 编辑

一个复制和重命名的批处理
求教批处理高手,帮忙解答下,感谢!

假设被复制的文件列表
D:\BaiduYunDownload\春装02月24号\28105\1.jpg
D:\BaiduYunDownload\春装02月24号\28109\1.jpg
D:\BaiduYunDownload\春装02月24号\27105\1.jpg
D:\BaiduYunDownload\春装02月24号\38105\1.jpg
D:\BaiduYunDownload\春装02月24号\8815\1.jpg
要求效果:
把以上所有文件1.JPG 复制到E盘并重命名为对应目录名称 例如: 把图片 D:\BaiduYunDownload\春装02月24号\28105\1.jpg  复制到E盘 命名后的效果就是这个:28105.jpg
批处理后的效果应该是在E盘下有下列文件
28105.jpg
28109.jpg
27105.jpg
38105.jpg
8815.jpg
作者: taofan712    时间: 2017-2-27 11:29

本帖最后由 taofan712 于 2017-2-28 09:07 编辑
  1. @echo off
  2. for /f "delims=" %%a in ('dir /a-d /b /s 1.jpg') do (
  3. for /f "tokens=4 delims=\" %%b in ("%%~dpa") do (
  4. copy %%a E:\%%b%%~xa
  5. )
  6. )
  7. pause
复制代码
放到E盘,可解决你假设的问题。
作者: 回家路上    时间: 2017-2-27 12:00

  1. @echo off & rem 1.txt中要复制列表
  2. for /f "delims=" %%i in (1.txt) do (
  3. for %%a in ("%%~dpi.") do (
  4. copy /y "%%i" "E:\%%~na%%~xi"
  5. )
  6. )
  7. pause
复制代码

作者: cxl832004    时间: 2017-2-28 14:51

非常感谢各位




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2