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

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

本帖最后由 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-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盘,可解决你假设的问题。

TOP

  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
复制代码
1

评分人数

人生是一部书/只有这一页最温暖/读懂它的时候/我们在远方流泪...

TOP

非常感谢各位

TOP

返回列表