Выполнение командного файла на удаленном сервере из команды powershell - PullRequest
0 голосов
/ 11 января 2019

В настоящее время я пытаюсь реализовать функциональность, упомянутую в этом вопросе, но у меня ничего не получилось. Я пытаюсь запустить это на сервере TeamCity, чтобы скопировать некоторые файлы, а затем запустить командный файл. Робокопия работает отлично, но выполнение для Invoke-Command кажется неудачным, но не выдает никакой ошибки ни одним из способов, которые я пробовал.

Это мой код:

$deploymentComputerName = 'server.name.com'
$robocopyPath = 'C:\Windows\System32\robocopy.exe'

try {
  $deploymentShare = "\\" + $deploymentComputerName + "\folder"
  $deploymentPackageDirectory = 'c:\local\route'
  $invokeRoute = "C:\Route\batchFile.bat"

  &$robocopyPath /E /PURGE $deploymentPackageDirectory $deploymentShare /r:0 /XF "LibSassHost.dll" "LibSassHost.Native-64.dll" "libsass.dll"

  Write-Host "Attempting to run it with the FIRST method"
  Invoke-Command -ComputerName $deploymentComputerName -ScriptBlock {Invoke-Expression -Command:"cmd.exe /c '$invokeRoute'"}
  Invoke-Command -ComputerName $deploymentComputerName -ScriptBlock {Invoke-Expression -Command:"cmd.exe /c $invokeRoute"}

  Write-Host "Attempting to run it with the SECOND method - " $invokeRoute
  Invoke-Command -ScriptBlock { "$deploymentShare\batchFile.bat" } -ComputerName $deploymentComputerName

  Write-Host "Finished trying to run the methods"    
} catch {
  Write-Host "Error running powershell file"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...