如何将文件和文件夹树复制到远程计算机?

Posted

技术标签:

【中文标题】如何将文件和文件夹树复制到远程计算机?【英文标题】:How Do I copy the files and the Folder Tree to Remote Machine? 【发布时间】:2010-11-23 06:30:38 【问题描述】:

我有两台机器服务器 A 和服务器 B,我想使用 PowerShell 将服务器 A 中的所有文件和文件夹树复制到服务器 B。

我试过下面给出的命令,但它只复制文件夹中的文件,并没有创建文件夹树:

Copy-Item E:\TestSource\* //TestDestination/ -recurse -force

【问题讨论】:

我在这里回答了类似的问题:***.com/a/22419054/9130 【参考方案1】:

我假设您拥有 2 台服务器的权限

Get-ChildItem "\SERVER_A\C$" -Recurse |复制项目-目标"\SERVER_B\C$"

【讨论】:

我试过了,但它会复制所有文件夹以及将文件夹中的所有文件复制到目录的根目录 此语句以平面结构复制文件夹和文件。【参考方案2】:
Get-ChildItem \\server_a\c$ -Recurse | % 
   $dest = Join-Path -Path \\server_b\c$ -ChildPath (Split-Path $_.FullName -NoQualifier)

   if (!(Test-Path $dest))
   
      mkdir $dest
   

   Copy-Item $_.FullName -Destination $dest -Force

使用带有 -NoQualifier 参数的拆分路径将返回不带驱动器信息的源路径。将它与您的目标路径前缀连接,并使用结果创建目标目录(如果它不存在)并执行复制。

【讨论】:

【参考方案3】:

不要使用 PowerShell 的 Copy-Item cmdlet。查找第三方镜像/同步工具。我们使用RoboCopy。

【讨论】:

【参考方案4】:

如果您有源文件夹和目标文件夹,则可以使用以下命令:

robocopy $source $dest /e

如果您需要有关该命令的更多信息,可以使用 robocopy /?,或访问 Windows Server Technet, Robocopy 的 Robocopy 文档。

【讨论】:

以上是关于如何将文件和文件夹树复制到远程计算机?的主要内容,如果未能解决你的问题,请参考以下文章

如何远程复制另一台Linux服务器

如何通过远程桌面连接把文件复制到远程主机

markdown 如何将文件从远程服务器复制到本地计算机?

sh 如何将文件从远程服务器复制到本地计算机?

将文件从远程桌面(RDP)复制到Azure blob存储中

linux文件拷贝到其他机器