如何在 PowerShell 中将文件/文件夹复制到远程位置?

powershellmicrosoft technologiessoftware & coding更新于 2026/2/15 15:22:17

要将文件或文件夹复制到远程位置或从远程位置复制文件或文件夹,您需要提供项目的 UNC 路径。例如,我们将文件从本地计算机复制到名为 Test-PC 的远程计算机。

Copy-Item D:\Temp\PowerShellcommands.csv -Destination \Test-
PC\Sharedpath\PScommands.ps1 -PassThru

此处,文件 PowerShellcommands.csv 被复制到远程计算机,并将其重命名为 PSCommands.ps1

您也可以将文件从一个共享位置复制到另一个共享位置。

例如,

Copy-Item \Test-PC1\D$\PowerShellcommands.csv -Destination \Test-
PC\Sharedpath\PScommands.ps1 -PassThru

有将项目复制到远程位置的另一种方法是使用 ToSession 参数。要使用 ToSesssion 参数,您需要使用 PSRemote 计算机会话连接远程计算机。如果目标文件/文件夹位于不同的域或工作站,则需要在远程连接时使用不同的凭据。

例如:

$destsession = New-PSSession -ComputerName Test-PC -Credential (Get-Credential)
Copy-Item D:\Temp\PowerShellcommands.csv -ToSession $destsession -PassThru

您也可以使用上述相同的方法复制文件夹。

例如:

$destsession = New-PSSession -ComputerName Test-PC -Credential (Get-Credential)
Copy-Item D:\Temp\* -ToSession $destsession -Force -PassThru

您还可以将文件从一个会话复制到另一个会话,源路径应在 –FromSession 参数中提及,而目标路径应在 –ToSession 参数中提及。

例如,

$destsession = New-PSSession -ComputerName Test-PC -Credential (Get-Credential)
$sourcesession = New-PSSession -ComputerName Test1-PC -Credential (Get-Credential)
Copy-Item -FromSession $sourcesession -ToSession $destsession -PassThru

相关文章