Задача

Тут надо писать еще!! Скопировать файл на удаленную машину. Однако, в команде есть запятая, которая некорректно обрабатывается (что описано тут: https://stackoverflow.com/questions/23827199/escaping-strings-when-using-wmic ), а другие методы powershell 2.0 не умеет (с помощью BITS не получилось).
Выход из этой ситуации такой. Можно создать скрипт с командой на скачивание дистрибутива и закинуть его более экзотическим способом - через реестр удаленной машины. Этот способ описан тут:
https://github.com/ChrisTruncer/WMIOps/blob/master/WMIOps.ps1
https://github.com/ChrisTruncer/WMIOps
Закинуть сразу дистрибутив - невозможно, поскольку скрипт WMIOps не предназначен для перекидывания больших файлов.

$node='szud-dev200'
$user='.\Администратор'
$password='P@ssw0rd'
$File='c:\temp\upload.ps1'

Write-Verbose "Read in local file and base64 encode it"
$filecontents = Get-Content -Encoding byte $File
$filecontentencoded = [System.Convert]::ToBase64String($filecontents)

$password = ConvertTo-SecureString $password -asplaintext -force
$credentials = New-Object -Typename System.Management.Automation.PSCredential -argumentlist $user,$password


#Copy to remote registry
$HKEY_LOCAL_MACHINE=2147483650
$reg= Get-WMIObject -list "StdRegProv" -namespace root\default -computername $node -credential $credentials
$Key = "Software\Microsoft\DRM"
$ValueName="content"
$Value=$filecontentencoded
$results = $reg.SetExpandedStringValue($HKEY_LOCAL_MACHINE, $Key, $ValueName, $Value)
Enter your comment. Wiki syntax is allowed:
 
  • ms_windows_ms_sql/remote_copy_files_using_registry.txt
  • Last modified: 2019/02/11 09:13
  • by 127.0.0.1