Выполнение скрипта cmd на удалённой машине средствами PowerShell

Подскажите, как решить следующую задачу: мне нужно средствами powershell запустить на удаленном доменном компьютере файл cmd. Вроде бы простая задача, но бьюсь уже два дня и чего то не хватате. Пробую так

#ввожу логин пароль админа на удаленной машине
$GC = $Host.UI.PromptForCredential("Please enter credentials", "Enter Guest credentials for VM", "", "")
#задаю имя машины
$vmname = 'pc1'
#задаю команду
$a = "cmd /c 'D:\script1.cmd'"
#передаю команду на удаленную машину с правами админа
Invoke-Command -ComputerName $vmname -ScriptBlock {$a} -Credential $GC

Ответы (1 шт):

Автор решения: Aleksey Bokaty

Ты передаешь в параметр -ScriptBlock текст через переменную $a. А он ждет от тебя объект типа ScriptBlock

В твоем случае нужно делать так:

$a = {D:\script1.cmd}
Invoke-Command -ComputerName $vmname -ScriptBlock $a -Credential $GC
→ Ссылка