Запуск сценария powershell, который находится на удаленной машине?

#powershell

#powershell

Вопрос:

У нас есть сценарий powershell, который находится на нашем сервере. Пытаюсь выяснить, как использовать Invoke-Command с -ComputerName для его удаленного запуска, но когда я запускаю:

 Invoke-Command - ComputerName XXXX -FilePath YYYY
  

Похоже, что Invoke-Command ищет локальный файл. Как мне указать, что я хочу удаленно запустить сценарий, который доступен только на удаленной машине?

Комментарии:

1. Вы имеете в виду, если он находится в общей сетевой папке? если это так, попробуйте -Аутентификация Credssp при выполнении PSSession. Это позволяет выполнить двойной переход

Ответ №1:

Вы можете использовать этот -ScriptBlock параметр вместе с поиском точек.

 Invoke-Command -ComputerName machine1 -Scriptblock {
    . "C:pathtofile.ps1"
}
  

Редактировать: добавление версии, использующей creds

 # Will bring up a dialogue box asking for credentials
$creds = get-credential
Invoke-Command -ComputerName machine1 -Credential $creds -Scriptblock {
    . "C:pathtofile.ps1"
}
  

Комментарии:

1. Как вы добавляете учетные данные имени пользователя / пароля?