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

[文本处理] 怎样查找多个子目录中的指定文件夹并复制到另一个文件夹中?

各位大神某某软件有个人的使用习惯想定期备份一下


软件可能安装在任意盘,查找并复制到(指定盘的:\当前计算机名\使用习惯备份_备份日期)目录下,假设软件安装在C:\123... 使用习惯在C:\123...\Settings(Settings)文件内部的全部文件需要备份

并且能按照之前的目录结构复制,比如:输入备份盘符是(I) 当前计算机名称是(实验室_1) 最终在I:\实验室_1\使用习惯备份_2018年1月3日\123...\Settings 下备份相关内容。


看到比较接近的代码是
@echo off
set "pth=C:\123"
set/p name=输入文件名:
for /f "delims=" %%a in ('dir /a-d /b /s "%pth%\%name%"') do (
  set "p=%%~dpa"
  call xcopy "%%a" "%%p:%pth%=I:\%%" /y
)
pause

回复 3# BG5OH


    更多问题加QQ讨论吧,论坛难以实时沟通,有些也说不清楚。
QQ33892006

TOP

回复 2# yhcfsr

非常感谢  yhcfsr  大侠的教导
当前的运行结果:
[attach]11001[/attach]
[attach]11002[/attach]

目前有三个问题
源目录需要两个参数,1:设置大概的搜索范围(因为只知道软件安装的第一级目录,例如:C:\123)
                              2:范围内的指定文件夹名称(需要备份的文件名称都是相同的,例如:en-US)
[attach]11003[/attach]

目标路径期望是:D:\BG5OH_使用习惯备份_2018年01月04日\123\
[attach]11004[/attach]

TOP

  1. @echo off
  2. %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
  3. rem 设置源目录
  4. set "SourDir=C:\123...\Settings"
  5. rem 设置备份路径
  6. set "CpDir=I:"
  7. set "SubCpDir=%ComputerName%\使用习惯备份_%date:~0,4%年%date:~5,2%月%date:~8,2%日\%SourDir:~3%"
  8. robocopy /e /copyall "%SourDir%" "%CpDir%\%SubCpDir%"
  9. pause
复制代码

TOP

返回列表