我有兩臺機器服務器A和服務器B,我想使用PowerShell將所有文件和文件夾樹從服務器A複製到服務器B.如何將文件和文件夾樹複製到遠程機器?
我曾嘗試命令如下,但只複製文件夾中的文件,並不會創建文件夾樹:
Copy-Item E:\TestSource\* //TestDestination/ -recurse -force
我有兩臺機器服務器A和服務器B,我想使用PowerShell將所有文件和文件夾樹從服務器A複製到服務器B.如何將文件和文件夾樹複製到遠程機器?
我曾嘗試命令如下,但只複製文件夾中的文件,並不會創建文件夾樹:
Copy-Item E:\TestSource\* //TestDestination/ -recurse -force
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參數拆分路徑將返回的源路徑沒有驅動器的信息。加入目標路徑前綴並使用結果創建目標目錄(如果它不存在)並執行復制。
請勿使用PowerShell的Copy-Item
cmdlet。找到第三方鏡像/同步工具。我們使用RoboCopy。
如果你有一個源和目標文件夾,您可以使用下面的命令:
robocopy $source $dest /e
如果您需要了解該命令的任何詳細信息,你可以使用robocopy /?
,或在Windows Server Technet, Robocopy參觀的Robocopy文件。
我在這裏回答了一個類似的問題:http://stackoverflow.com/a/22419054/9130 –