Начиная с версии PowerShell 5 и выше (включенной в Windows Server 2016, загружаемой как часть WMF 5 для более ранних версий ), это возможно с помощью удаленного взаимодействия. Преимущество этого в том, что он работает, даже если по какой-либо причине вы не можете получить доступ к общим ресурсам.
Чтобы это работало, в локальном сеансе, в котором инициируется копирование, должен быть установлен PowerShell 5 или выше. Для удаленного сеанса не обязательно должна быть установлена оболочка PowerShell 5 - она работает с версиями PowerShell до 2 и версиями Windows Server до 2008 R2. [1]
С сервера A создайте сеанс на сервере B:
$b = New-PSSession B
А потом еще из А:
Copy-Item -FromSession $b C:\Programs\temp\test.txt -Destination C:\Programs\temp\test.txt
Копирование элементов в B выполняется с помощью -ToSession
. Обратите внимание, что в обоих случаях используются локальные пути; вы должны отслеживать, на каком сервере вы находитесь.
[1]: при копировании с или на удаленный сервер, на котором есть только PowerShell 2, остерегайтесь этой ошибки в PowerShell 5.1 , которая на момент написания означает, что рекурсивное копирование файлов не работает -ToSession
, очевидно, копирование не работает в все с -FromSession
.