Віддалене виконання сценаріїв в windows powershell 2

Привіт всім! У цій статті розглянемо таке питання, як віддалене виконання сценаріїв використовуючи Windows PowerShell 2.0

Подивимося стан служби WinRM, виконавши команду get-service winrm. Як бачимо, дана служба виконується

Перейдемо на машину з Windows 7. На даній машині на диску C створена папка Scripts

В папці Scripts був заздалегідь підготовлений сценарій Service_status.ps1

Якщо відкрити файл Service_status.ps1 (наприклад в блокноті), то можна побачити, що в ньому прописані дві команди:

clear - очищення екрану PowerShell

get-service s * | sort-object status - отримати список служб, які починаються на букву S і впорядкувати їх за параметром Status

Запускаємо на машині з Windows 7 PowerShell

Administrator - користувач, від імені якого буде проводиться підключення до віддаленої машині

- в даних дужках прописуємо команду, яку потрібно виконати на віддаленій машині. Так як нам потрібно визначити політику виконання сценаріїв PowerShell, в дужках пишемо команду get-executionpolicy

Вводимо пароль користувача для підключення до віддаленої машині

Server01 - назва віддаленого комп'ютера, на якій виконується сценарій

Як бачимо, сценарій Service_status.ps1 успішно відпрацював на машині з ім'ям Server01 і відобразив нам список служб починаються на букву S

Напишемо ще один сценарій, що складається з однієї команди, а саме stop-service sppsvc

Даною командою ми зупинимо виконувати службу sppsvc на віддаленій машині Server01

Вибираємо File-Save As

Сценарій збережемо в папці Scripts на диску С: під ім'ям Stop_service_sppsvc

Збережено сценарій Stop_service_sppsvc.ps1

Виконаємо створений сценарій Stop_service_sppsvc.ps1 на віддаленій машині Server01

Для цього вводимо команду invoke-command -filepath C: \ Scripts \ Stop_service_sppsvc.ps1 -computerName Server01 і виконуємо її

Сценарій Stop_service_sppsvc.ps1 виконаний успішно, так як ніяких помилок PowerShell нам не видав

Після виконання сценарію Stop_service_sppsvc.ps1 служба sppsvc на віддаленій машині Server01 повинна бути зупинена.

Перевіримо стан служби sppsvc на віддаленій машині Server01 виконавши сценарій Service_status.ps1

Виконуємо команду invoke-command -filepath C: \ Scripts \ Service_status.ps1 -computername Server01

Як бачимо, служба sppsvc на машині з ім'ям Server01 зупинена

Схожі статті