脚本自动复制文件?

时间:2011-03-04 01:32:04

标签: windows file

客户端需要传播到Windows框上相同文件夹结构的大约160种变体的文件的更新副本。有人可以帮助我使用脚本自动执行此操作吗?我是开发人员,但是有脚本的n00b。

文件夹结构如下:

    • 一个
      • 布局
      • 部件
      • 帮助
    • 2
      • 布局
      • 部件
      • 帮助
    • 3
      • 布局
      • 部件
      • 帮助
    • ... x 160

我需要将同一个文件复制到'components'文件夹。

感谢。

4 个答案:

答案 0 :(得分:2)

这是我做过的PowerShell解决方案,应该按照你的要求做。您需要编辑SourceDir,Dest和Filter以获取所需的文件。

$SourceDir = "C:\Source"
$Dest = "C:\Root"
$Files = gci -Path $SourceDir -Recurse -Filter "*.txt" |?{$_.Directory -ne $null}

$Index = ($Source.Length)
$SSFile = $UpdatedPath.Substring($Index)
$Index = $SSFile.LastIndexOf("\")
$ChildDir = $SSFile.Substring(0,$Index)
$Root = Dir -Path $Dest|?{$_.Directory -eq $null}
foreach ($File in $Files){
    foreach ($Folder in $Root){
        $FolderPath = $Folder.FullName
        $DropPath = ("{0}{1}" -f$FolderPath, $ChildDir)
        Copy-Item -Path $File.FullName -Destination $DropPath
    }
}

答案 1 :(得分:1)

作为开发人员,只需枚举第一级的文件夹并为每个文件夹执行复制命令。

伪代码:

for each directory in /root

    copy file to /root/directory/components

答案 2 :(得分:0)

使用批处理 “ROBOCOPY”

我用它来更新我的可移动驱动器(USB)

语法:

ROBOCOPY“C:\来自Dir”“C:\ To Dir”[选项] 有关更多信息, 看到 http://ss64.com/nt/robocopy.html

非常适合脚本noobs

答案 3 :(得分:0)

这应该在批处理文件中工作 - 或者如果将所有%%减少到%

,则从命令行工作
@echo off
for /d /r "c:\root" %%a in (*) do if /i "%%~nxa"=="components" copy "d:\folder\file.txt" "%%a"