Якщо ви хочете увімкнути або вимкнути виконання сценарію Windows PowerShell (turn on or off Windows PowerShell script execution) Windows 10 , дотримуйтесь цього покрокового посібника. Ми будемо використовувати редактор реєстру (Registry Editor) та редактор локальної групової політики (Local Group Policy Editor) , щоб увімкнути або вимкнути цю функцію.
Windows PowerShell – це важливий і зручний інструмент, включений до операційної системи Windows . В основному існує два типи сценаріїв – підписані довіреним видавцем та локальні сценарії. Локальні скрипти це те, що ви створюєте на своєму персональному комп'ютері, тоді як інший це те, що довірений видавець підписав для виконання конкретного завдання.
Включити або вимкнути виконання скрипту Windows PowerShell
Щоб увімкнути або вимкнути виконання сценарію Windows PowerShell за допомогою (Windows PowerShell) редактора групової політики (Group Policy Editor) , виконайте наведені нижче дії.
- Знайдіть gpedit.msc у полі пошуку на панелі завдань.
- Натисніть « Змінити групову політику» (Edit group policy) у результатах пошуку.
- Перейдіть до Windows PowerShell у розділі « Конфігурація комп'ютера (Computer Configuration)».
- Двічі клацніть Увімкнути виконання сценарію (Turn on Script Execution).
- Виберіть параметр « Увімкнено (Enabled)».
- Виберіть політику виконання (Execution Policy) з списку, що розкривається.
- Виберіть параметр « Вимкнено (Disabled)», щоб вимкнути виконання скрипту.
- Натисніть «Застосувати (Apply) » та «ОК (OK)».
Давайте докладно розглянемо ці кроки.
Спочатку вам потрібно буде відкрити редактор локальної групової політики (Local Group Policy Editor) на вашому комп'ютері. Для цього виконайте пошук у полі пошуку gpedit.msc на панелі завдань (Taskbar) та натисніть « Змінити групову політику» (Edit group policy) у результатах пошуку. Після відкриття цього інструмента перейдіть наступним шляхом:
Computer Configuration > Administrative Templates > Windows Components > Windows PowerShell
У папці Windows PowerShell ви побачите параметр Turn on Script Execution . Двічі клацніть по ньому та виберіть параметр « Увімкнено (Enabled)».
Після цього виберіть Execution Policy зі списку, що випадає. Ви побачите ці три варіанти:
- Дозволити лише підписані скрипти
- Дозволити (Allow) локальні скрипти та віддалено підписані скрипти
- Дозволити усі скрипти
Якщо ви хочете вимкнути виконання сценарію в Windows PowerShell , виберіть параметр Disabled .
У будь-якому випадку натисніть « Застосувати (Apply)» та « ОК (OK)» , щоб зберегти зміни.
Як було сказано раніше, таку ж зміну можна внести за допомогою редактора реєстру (Registry Editor). Перед цим рекомендується створити точку відновлення системи та створити резервну копію всіх файлів реєстру (backup all Registry files) .
Увімкнути або вимкнути виконання сценарію Windows PowerShell за допомогою (Windows PowerShell) реєстру (Registry)
Щоб увімкнути або вимкнути виконання сценарію Windows PowerShell , виконайте такі дії.
- Натисніть Win+R .
- Введіть regedit та натисніть кнопку Enter .
- Натисніть кнопку Так (Yes) .
- Перейдіть до Windows всередині ключа HKLM (HKLM key).
- Клацніть правою кнопкою миші Windows > Створити > Ключ.
- Назвіть його PowerShell .
- Клацніть правою кнопкою миші (Right-click) PowerShell PowerShell > New DWORD( (Value) 32-розрядний) .
- Назвіть його як EnableScripts .
- Двічі клацніть по ньому, щоб встановити значення (Value) даних як 1 .
- Right-click PowerShell > New > String Value .
- Назвіть його ExecutionPolicy .
- Двічі клацніть на ньому, щоб встановити дані значення (Value), як зазначено нижче.
Якщо ви хочете дізнатися більше, читайте далі.
Щоб почати, натисніть Win+R , введіть regedit та натисніть кнопку Enter. Якщо ви бачите запрошення UAC , натисніть кнопку « Так (Yes)», щоб відкрити редактор реєстру (Registry Editor) на комп'ютері. Після цього перейдіть наступним шляхом:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows
Клацніть правою кнопкою миші Windows, виберіть « New > Key, і назвіть його PowerShell .
Вам потрібно буде створити значення DWORD (32-розрядне) та значення String (Value) в (String Value) ключі PowerShell . (PowerShell ) Для цього клацніть правою кнопкою миші PowerShell > New > DWORD (32-bit) Value і назвіть його EnableScripts .
Двічі клацніть (Double-click) EnableScripts , (EnableScripts) щоб встановити значення даних (Value data ) як 1 або 0 . Якщо ви бажаєте увімкнути цю функцію, зробіть її 1 . В іншому випадку нехай буде 0 .
Тепер вам потрібно буде встановити політику виконання. Для цього клацніть правою кнопкою миші PowerShell > New > String Value і назвіть його ExecutionPolicy .
Після цього двічі клацніть на ньому і введіть дані значення, (Value data ) як зазначено нижче:
- AllSigned: дозволити лише підписані сценарії.
- RemoteSigned : дозволити локальні скрипти та скрипти з віддаленим підписом.
- Без обмежень: (Unrestricted:) дозволити всі сценарії
Нарешті натисніть кнопку OK , щоб зберегти зміни.
Це все! Сподіваюся, допоможе.
If you want to turn on or off Windows PowerShell script execution in Windows 10, наступний цей крок за кроком керування. Ви повинні використовувати Registry Editor і Local Group Policy Editor, щоб задовольнити або відхилити цю функціональність.
Windows PowerShell is essential and handy tool included в Windows operating system. Вони є основними двома типами scripts – Зазначено trusted publisher and Local scripts.Local scripts є те, що ви створюєте на вашому персональному комп'ютері, деінше одне є те, що trusted publisher has signed to perform a specific task.
Turn on or off Windows PowerShell script execution
Перейти до або off Windows PowerShell script execution using Group Policy Editor, follow these steps-
- Search for gpedit.msc в Taskbar search box.
- Click on Edit group policy in the search result.
- Go to Windows PowerShell in Computer Configuration.
- Double-click on Turn on Script Execution.
- Select the Enabled option.
- Choose an Execution Policy від drop-down list.
- Select the Disabled option to turn off script execution.
- Click on Apply and OK.
Let’s check out these steps in detail.
На першому, ви повинні буде відкритий місцевий Група Policy Editor на вашому комп'ютері. Для того, знайти для gpedit.msc в Taskbar search box and click on Edit group policy in the search result. Після завершення цього інструменту, навігації до following path-
Computer Configuration > Administrative Templates > Windows Components > Windows PowerShell
In the Windows PowerShell folder, you will see a setting called Turn on Script Execution. Double-click on it and select the Enabled option.
Після того, як вийти з execution policy з кишенькового поля. You will see these three options-
- Allow only signed scripts
- Allow local scripts and remote signed scripts
- Allow all scripts
Якщо ви хочете, щоб перейти до script execution in Windows PowerShell, choose the Disabled option.
Either way, click on Apply and OK to save the change.
Як хлопчик earlier, це може бути для того, щоб змінити себе за допомогою Registry Editor. Поза тим, що він є запозичений до створеної системи Restore point and backup all Registry files.
Enable or disable Windows PowerShell script execution using Registry
Для того, щоб налаштувати або відключити Windows PowerShell script execution, follow these steps-
- Press Win+R.
- Type regedit and press the Enter button.
- Click on the Yes button.
- Go to Windows inside HKLM key.
- Right-click on Windows > New > Key.
- Name it as PowerShell.
- Натисніть кнопку PowerShell > New DWORD (32-bit) Value.
- Name it as EnableScripts.
- Double-click on it to set Value data as 1.
- Right-click PowerShell > New > String Value.
- Name it as ExecutionPolicy.
- Double-click on it to set Value data як mentioned below.
If you want to learn more, keep reading.
To get started, press Win+R, тип regedit and hit the Enter button. If you see the UAC prompt, click on the Yes button to open Registry Editor на вашому комп'ютері. After that, navigate to the following path-
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows
Right-click on Windows, select New > Key, and name it as PowerShell.
Ви будете створювати DWORD (32-bit) Value and a String Value in the PowerShell key. For that, right-click on PowerShell > New > DWORD (32-bit) Value and name it as EnableScripts.
Double-click on EnableScripts to set the Value data as 1 or 0. If you want to enable this functionality, make it 1. Otherwise, let it be 0.
Now, you will have to set the execution policy. For that, right-click on PowerShell > New > String Value, and name it as ExecutionPolicy.
Після того, як double-click on it and enter the Value data as said below-
- AllSigned: Allow only signed scripts
- RemoteSigned: Allow local scripts and remote signed scripts
- Unrestricted: Allow all scripts
At last, click the OK button to save the change.
That's all! Hope it helps.
Максим Романов
About the author
«Я позаштатний експерт з Windows та Office. У мене більше 10 років досвіду роботи з цими інструментами, і я можу допомогти вам отримати з них максимальну користь.Мої навички включають: роботу з Microsoft Word, Excel, PowerPoint і Outlook; сторінки та додатки, а також допомога клієнтам у досягненні їхніх бізнес-цілей».
Робота зі сценаріями PowerShell може виявитися захоплюючою пригодою. Адже він надає вам чистий інтерфейс для того, щоб ви могли створити свої сценарії та автоматизувати за їх допомогою шаблонні завдання.
Якщо ви розробник, то можете створювати повноцінні сценарії автоматизації. PowerShell чудово справляється з цим завданням, особливо якщо ви використовуєте його для того, щоб створювати, тестувати та розгортати рішення в середовищах CI/CD.
У цій статті ми подивимося на те, як створюються і запускаються сценарії PowerShell. Тут ми пробіжимося по покроковому керівництву, як це зробити за допомогою VS Code, Notepad та ISE (Integrated Scripting Environment – інтегроване середовище розробки сценаріїв).
Що таке PowerShell?
PowerShell – це крос-платформний інструментальний засіб автоматизації та конфігурування. Він надає повний пакет для адміністраторів, розробників та інших користувачів, який дозволяє запускати командлети (невеликі та легкі команди) для керування різними завданнями.
Під пакетом розуміється таке:
- Оболонка командного рядка
- Відповідна мова програмування
- Фреймворк для виконання командлетів
На відміну від командного рядка його можна використовувати на всіх основних платформах, у тому числі Windows, Linux і macOS.
Якщо дивитися з технічного погляду, в основі PowerShell лежить платформа .NET. За рахунок свого принципу роботи він підтримує об'єкти та структуровані дані, наприклад, JSON, CSV та XML.Крім того, розробники можуть разом із PowerShell використовувати REST API. На жаль, але стандартний командний рядок всього цього не підтримує, оскільки він текстовий.
Усі сценарії PowerShell мають розширення .ps1.
Якщо ви збираєтеся писати сценарії PowerShell, вам потрібно знати три ключові поняття:
- Командлети : це елементарний сценарій, що виконується, який пропонує попередньо налаштований функціонал. Наприклад, для того, щоб скопіювати якийсь елемент, ви можете скористатися командлетом Copy-Item, для того, щоб отримати довідку – Get-Help, для того, щоб вивести щось на екран, – Write-Host.
- Псевдоніми : псевдоніми дозволяють легко звертатися до командлетів Вони забезпечують швидший доступ до них. Однак бажано використовувати їх з підказками з погляду інтерактивності і не варто їх використовувати при безпосередньому написанні сценаріїв PowerShell.
- Функції : функція – це набір операторів PowerShell. Ініціювати роботу функції можна, викликавши її.
PowerShell та написання сценаріїв
Написання сценаріїв – це основний метод автоматизації вашої роботи. Неважливо, хто ви, програміст, адміністратор чи фрілансер, сценарії можуть автоматизувати якісь стандартні робочі процеси.
Якщо вже на те пішло, то написання сценаріїв має велику кількість переваг, наприклад,
- Автоматизація економить ваш дорогоцінний час
- База знань, що переноситься
- Дозволяє підтримувати узгодженість між системами
- Підвищує рівень ваших навичок та шанси на працевлаштування
Ви можете писати сценарії PowerShell, Bash, Ruby чи Python.
Загалом PowerShell – це відмінний інструмент для написання сценаріїв.Тим часом, Windows не дозволяє запускати сценарії через налаштування безпеки. Їх запуск може призвести до таких помилок, як "Running scripts is disabled on this system." («Запуск сценаріїв у цій системі заборонено.»). Для того, щоб обійти цей момент і виконати сценарій, вам необхідно встановити правильну політику виконання (розглянуто далі).
Чому потрібно використовувати PowerShell для написання сценаріїв?
Одна з основних причин, чому для написання сценаріїв варто вибрати саме PowerShell, полягає в тому, що він може працювати на різних платформах. Він підтримує Windows, Linux і MacOS, чого не можна сказати про стандартну команду рядку Windows.
PowerShell можна використовувати для того, щоб створювати прості завдання за допомогою простих будівельників завдань. Наприклад, ви можете скористатись PowerShell для того, щоб перезавантажити комп'ютер, періодично очищати кеш або навіть виконати автентифікацію сеансів.
Крім того, сценарії PowerShell переважно використовуються для того, щоб автоматизувати процес управління системою. Тим не менш, ви, як розробник, можете використовувати його для тестування, складання та розгортання складання в середовищі CI/CD.
Як створити сценарії PowerShell?
Для створення сценаріїв PowerShell вам потрібен текстовий редактор. У більшості випадків ви будете задоволені найпростішим текстовим редактором, але, якщо ви вирішите спробувати сучасний редактор тексту/коду, то можете виявити, що весь процес став краще піддаватися управлінню.
Саме тому ми почнемо з того, що продемонструємо, як можна створювати сценарії PowerShell за допомогою Visual Studio Code (також відомого як VS Code).Крім цього, ми розглянемо, як можна створювати сценарії PowerShell у Блокноті та інших інтегрованих середовищах, які відмінно підходять для написання сценаріїв, наприклад PowerShell Integrated Scripting Environment (PowerShell ISE).
1. За допомогою VS Code
VS Code – це надійний крос-платформний редактор коду і, до того ж, безкоштовний. Його розробкою займається компанія Microsoft. Вона надає користувачам додаткові переваги відмінної підтримки PowerShell.
Ви отримуєте чистий готовий інтерфейс і можете вибрати для роботи чи не будь-яку мову програмування.
VS Code – це повноцінний редактор коду, отже, він підтримує розширення. І для того, щоб писати сценарії PowerShell було ще зручніше, ми скористаємося розширенням PowerShell.
Установка Visual Studio Code
Для початку потрібно встановити VS Code.
Для того, щоб зробити це, перейдіть на сторінку завантаження Visual Studio Code. Виберіть відповідну версію VS Code залежно від вашої операційної системи. Ми використовуємо Windows 11, тому вибрали версію для Windows.
Після того, як завантаження завершиться, двічі клацніть по інсталятору і для того, щоб інсталювати програму на свій комп'ютер, дотримуйтесь вказівок майстра інсталяції.
Встановлення розширення PowerShell
Встановити розширення PowerShell можна двома способами. Для початку створіть новий файл із розширенням .ps1.
VS Code є досить продуманим і розуміє, що ви збираєтеся працювати з PowerShell, тому автоматично рекомендує вам встановити розширення PowerShell від Microsoft.
Щоб встановити розширення, натисніть кнопку «Install» («Встановити»). Або ж, якщо ви хочете дізнатися більше, натисніть кнопку "Show Recommendations" ("Показати рекомендації").
Якщо Visual Studio Code з тієї чи іншої причини не видав вам жодних рекомендацій, ви можете спробувати знайти плагін вручну.
Для того, щоб відкрити вікно з розширеннями, натисніть на символ із чотирма квадратиками (з одним квадратиком, що вилітає) або натисніть Ctrl+Shift+X. Тепер введіть у рядку пошуку PowerShell і натисніть на перший результат. Після цього переходьте до встановлення (натисніть кнопку «Install»).
Насамкінець він запитає вас, чи довіряєте ви авторам файлів, що знаходяться в робочому середовищі. Щоб завершити встановлення, натисніть «Trust Workspace&Install» («Довірити робочому середовищу та встановити»).
Створення сценарію PowerShell за допомогою VS Code
Тепер, коли ви за всіма правилами встановили VS Code та розширення PowerShell, ви можете створити перший сценарій PowerShell.
Якщо ви ще не створили новий файл, то ви можете це зробити так:
- Відкрийте VS Code
- Відкрийте головне меню, натисніть File (Файл), а потім New Text File (Новий текстовий файл).
- Тепер збережіть файл, вибравши "File" -> "Save As" ("Файл" -> "Зберегти як").
- Введіть назву файлу і не забудьте вказати розширення .ps1.
- В кінці натисніть Save file (Зберегти файл).
Ось і все! Тепер можна створити свій сценарій. Я додав командлет Write-Host зі значенням "This is a VS Code Script written for Geekflare." («Це сценарій VS Code, написаний Geekflare.»).
Трохи згодом ми подивимося, як виконати цей сценарій, тож читайте далі!
2. За допомогою Блокноту
Немає нічого простішого, ніж створювати сценарії PowerShell у Блокноті.
Все, що вам для цього потрібно, виконати таке:
- Відкрийте Пуск та знайдіть там Блокнот (Notepad).
- Тепер клацніть по ньому правою кнопкою миші та виберіть "Відкрити від імені адміністратора" ("Open as an administrator").
- Напишіть свій сценарій.
- Як приклад напишемо "This is a PowerShell Script written in Notepad." («Це сценарій PowerShell, написаний у Блокноті.»).
- Перейдіть до головного меню, виберіть "File" і натисніть "Save As".
Ось і все! Ви успішно створили сценарій PowerShell у Блокноті.
3. За допомогою PowerShell ISE
Крім того, PowerShell у Windows пропонує нам своє власне інтегроване середовище розробки сценаріїв. З її допомогою ви можете писати свої сценарії, не вдаючись до допомоги сторонніх редакторів коду та тексту.
Для того, щоб використовувати його з толком, вам потрібно виконати таке:
- Відкрийте Пуск.
- Знайдіть Windows PowerShell ISE, ввівши в рядок пошуку PowerShell.
- Виберіть перший результат, клацніть правою кнопкою миші на ньому і виберіть «Відкрити від імені адміністратора». Відкриється вікно Windows PowerShell ISE.
- Тепер натисніть File і виберіть New (Новий). Відкриється вікно з новим файлом (як показано нижче).
- Напишіть сценарій. Як приклад напишемо "This is a PowerShell Script written with the help of PowerShell ISE." («Це сценарій PowerShell, написаний за допомогою PowerShell ISE.»).
- Після цього натисніть «File» і виберіть «Save As».
- Введіть назву файлу та натисніть Save.
Крім того, PowerShell ISE може допомогти вам запустити сценарій. Для цього знайдіть зверху кнопку "RUN" ("ЗАПУСТИТИ") і натисніть її. Якщо вона видає помилку безпеки, нижче ви можете прочитати, як її виправити.
Як виправити помилку безпеки і запустити сценарій PowerShell?
Як ми вже говорили раніше, Windows має сувору політику безпеки щодо запуску сценаріїв. Щоб вирішити це питання, вам потрібно дозволити виконання сценаріїв на комп'ютері під керуванням Windows.
Для цього виконайте таке:
- Відкрийте Пуск.
- Знайдіть PowerShell.
- Тепер клацніть на PowerShell правою кнопкою миші.
- Виберіть пункт «Відкрити від імені адміністратора».
- Коли PowerShell відкриється, введіть Set-ExecutionPolicy RemoteSigned.
- Натисніть клавішу Enter. Після цього програма запитає підтвердження. Щоб дозволити запуск сценаріїв, натисніть кнопку A.
Ось і все! Тепер ви нарешті можете запускати свої сценарії!
Нижче ми показали, як це виглядає у випадку з PowerShell ISE.
А ось так це виглядає у випадку з Visual Studio Code.
А у випадку з Блокнотом вам доведеться запустити сценарій безпосередньо з командного рядка PowerShell.
Рекомендації щодо написання та запуску сценаріїв PowerShell
Коли ви працюєте зі сценаріями PowerShell, необхідно дотримуватися рекомендацій, а саме:
- Використовуйте повну форму командлета, а чи не псевдонім. Псевдонім зручно використовувати, коли ви працюєте з консоллю. Так, він може покращити інтерактивність, але може зіпсувати сценарій.
- Бажано використовувати командлет Write-Host, оскільки його функціональні можливості досить обмежені. Так, він може вивести якийсь текст на екран, але ви не можете налаштувати те, яким кольором друкуватиметься цей текст. Натомість краще використовуйте командлет Write-Output.
- Завжди використовуйте іменник всередині командлета тільки в однині, не в множині.
- Використовуйте для командлета лише затверджені дієслова.
- Якщо можливо, вказуйте розширення програми. Це допоможе усунути плутанину та підвищить рівень читальності.
- Використовуйте спеціальні редактори PowerShell, наприклад, VS Code або PowerShell ISE.Вони мають чудові функції, які допоможуть вам у написанні та запуску сценаріїв PowerShell. Звичайно, ви можете використовувати Блокнот (Notepad або Notepad++), але в такому випадку ви звузите межі своїх можливостей.
- Намагайтеся коментувати код, але не переборщіть, оскільки це може погано вплинути на читання коду та зручність його супроводу.
- Переконайтеся, що для встановлення сценаріїв PowerShell встановлено правильний параметр безпеки.
Висновок
Ось і все! Тепер ви знаєте, як створювати та запускати сценарії PowerShell за допомогою Блокнота, VS Code та PowerShell ISE. Крім того, ви можете використовувати будь-який із згаданих вище інструментів для того, щоб писати та виконувати сценарії PowerShell.
Проте, як уже було сказано в рекомендаціях, писати сценарії PowerShell у Блокноті – не найкраща ідея. У такому разі ви упускаєте можливість скористатися багатьма функціями, які є у спеціальних редакторів коду VS Code та PowerShell ISE.