PowerShell Скрипти

22 березня 2023 1 хвилина Автор: Endpool

PowerShell це…Його можливості та область у якій він застосовується

PowerShell – це потужний інструмент командного рядка та сценаріїв, розроблений Microsoft для керування та автоматизації завдань у Windows-системах. За допомогою PowerShell можна легко автоматизувати рутинні завдання та керувати різними компонентами операційної системи, такими як файлові системи, реєстр, мережа, служби та багато іншого. Стаття PowerShell охоплює всі аспекти роботи з цим інструментом, починаючи від його основних принципів і концепцій, до більш складних завдань, таких як розгортання та управління хмарними середовищами. Ви дізнаєтесь про те, як створювати, запускати та налагоджувати сценарії PowerShell, а також про те, як використовувати потужні функції, такі як модулі, об’єкти та змінні.

Більше того, стаття охоплює різні приклади використання PowerShell для керування файлами та папками, реєстром, службами, мережею та іншими компонентами Windows. Вона також розглядає використання PowerShell у поєднанні з іншими технологіями, такими як Active Directory, Exchange та SharePoint. Нарешті, стаття описує основні переваги PowerShell, такі як покращена продуктивність та гнучкість, а також способи його використання для покращення безпеки та забезпечення відповідності регулюючим вимогам. Ця стаття є необхідним ресурсом для IT-фахівців, які хочуть дізнатися більше про PowerShell та використовувати його для автоматизації та керування Windows-системами.

Як працювати з PowerShell скриптами?

  1. Встановити PowerShell на операційну систему(далі ОС) користувача. У Windows встановлений за замовчуванням, також є можливість встановити на Linux та macOS;

  2. Створити файл з назвою формату [filenme].ps1, де ps1 – формат PowerShell скрипту;

  3. Написати код для автоматизації необхідної задачі, зберегти зміни у файлі;

  4. Запустити на виконання

Перші кроки написання PowerShell скриптів

Крок 1. Створення директорії та файлу.

1.  Створюємо папку з назвою powershell.

mkdir powershell

2. Переміщуємося у створену папку.

cd powershell

3. Створюємо пустий файл відповідного типу.

type nul > script.ps1

Та переверяємо наявність файлу за допомогою команди dir

Крок 2. Написання коду

  1. Уявімо, що нам необхідно створити програму, яка буде відображати наступні дані:
  • дату

  • ім’я користувача

  • інформацію про процессор

2. Для написання коду відкриємо файл у текстовому редакторі, наприклад Sublime Text 4 та додамо коментар, який буде описувати функціонал даного скрипта та додаємо коментар за допомогою # [comment text]

# Цей сценарій отримує ім’я користувача, інформацію про процесор і друкує дані

3. Після написання коментаря додамо наступні стрічки до даного скрипту:

відобразимо поточну дату; Get-Date.

На рисунку відображено файл після додавання необхідних нам команд

Крок 3. Спроба запустити скрипт

1. Для того щоб протестувати скрипт нам необхідно його запустити, для цього викличемо PowerShell з меню “Пуск”, натиснувши на відповідний додаток:

2.  Перейдемо до нашої робочої директорії:

3. Перевіримо наявність нашого скрипту за допомогою команди dir:
4. Спробуємо запустити скрипт за допомогою наступної команди: .script.ps1

 

Крок 4. Налаштування ExecutionPolicy

Як можна бачити, ми отримали повідомлення про відсутність можливості у даного користувача викликати скрипти на виконання, тож розберемося з тим, як це виправити. Задля безпеки ОС Windows інженерами Microsoft було вирішено створити певні policy(політики), які б обмежували користувачів у тих чи інших діях. Саме тому за замовчуванням у більшості версій OC Windows у звичайного користувача немає доступу до запуску скриптів. Параметр що відповідає за цей доступ називається ExecutionPolicy.

  1. Для того щоб зрозуміти яке значення даного параметру встановити –  відобразимо лістинг можливих для встановлення параметрів за допомогою наступної команди:

Get-ExecutionPolicy -List

2. На рисунку прописан Scope(далі скоуп) , який відповідає за певну сферу впливу параметру ExecutionPolicy:

  • Встановлюється груповою політикою для всіх користувачів комп’ютера;
  • Встановлюється груповою політикою для поточного користувача комп’ютера;
  • Впливає лише на поточний сеанс PowerShell;
  • Впливає лише на поточного користувача;
  • Область за замовчуванням, яка впливає на всіх користувачів комп’ютера.

приклад

3. Для того щоб переглянути параметр ExecutionPolicy лише для скоупу CurrentUser можна застосувати наступну команду:

Get-ExecutionPolicy -Scope CurrentUser

Наразі нам потрібні права за для запуску скриптів тільки для поточного користувача, тож необхідний скоуп – CurrentUser.

4. Для встановлення значення певної політики використовується команда Set-ExecutionPolicy, застосуємо її:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Приклад встановлення.

Перевіримо, чи все успішно встановилося.

Крок 5. Повторна спроба запуску скрипту

  1. Вітаю! Ви отримали інформацію про компьютер користувача, його юзернейм, та поточну дату. Для вдосконалення знань рекомендую перейти за наступними посиланнями:

2. Для того щоб переглянути параметр ExecutionPolicy лише для скоупу CurrentUser можна застосувати наступну команду: Nishang

Приклад перевірки.
Інші статті по темі
Знайшли помилку?
Якщо ви знайшли помилку, зробіть скріншот і надішліть його боту.