PowerShell脚本需求:查找指定名称文件夹并复制保留目录结构
NAME1文件夹增量备份PowerShell脚本
直接实现查找目标文件夹并完成增量备份,无需生成中间TXT文件,脚本如下:
# 替换为你的备份目标驱动器根路径 $targetRoot = "D:\Backup" # 从指定起始路径(这里是C:\)递归搜索名为NAME1的文件夹 $sourceFolders = Get-ChildItem -Path "C:\" -Filter "NAME1" -Directory -Recurse -ErrorAction SilentlyContinue # 遍历每个找到的文件夹执行增量复制 foreach ($folder in $sourceFolders) { # 构建目标路径,保留原目录结构(去掉源盘符前缀,拼接目标根路径) $targetPath = Join-Path -Path $targetRoot -Path $folder.FullName.Substring(3) # Robocopy增量备份:仅复制新增/修改内容,保留目录结构 robocopy $folder.FullName $targetPath /E /XO /R:3 /W:5 }
关键参数说明
Get-ChildItem部分:
-Path "C:\":指定搜索的起始根路径,可根据实际需求修改-Filter "NAME1":精准匹配文件夹名称-Directory:仅搜索目录,排除文件-ErrorAction SilentlyContinue:跳过无权限访问的路径,避免脚本中断
Robocopy部分:
/E:复制所有子目录(包括空目录),完整保留目录结构/XO:仅复制目标路径中不存在,或比目标文件更新的文件,实现增量备份/R:3:文件复制失败时重试3次/W:5:重试间隔5秒- 可选添加
/LOG:Backup_$(Get-Date -Format 'yyyyMMdd').txt,将复制日志保存为按日期命名的文件
内容的提问来源于stack exchange,提问作者tnpir4002
相关产品推荐
相关产品推荐

