PowerShell е добро и усъвършенствано междуплатформено решение за автоматизация на задачи. Обикновено е много лесно да създадете и стартирате скрипт на PowerShell в Windows система. Но може да бъдете възпрепятствани с „Изпълнението на скриптове е деактивирано в тази система.” съобщение за грешка, ако стартирате скрипт на вашата система. Ако системният администратор е поставил политика за блокиране на неоторизирани скриптове да се изпълняват в системата, ще видите посоченото съобщение за грешка. Трябва да деблокирате политиката или да настроите системния регистър и можете да стартирате всякакви скриптове.
Съдържание
Поправка 1 – Настройте PowerShell
Можете да стартирате код, заобикаляйки текущата политика за изпълнение. Така че, не е нужно да го подправяте, но можете да стартирате скрипта си.
1. След натискане на Windows клавиш+S клавишите заедно, въведете „powershell“.
2. След това докоснете с десния бутон върху „Windows PowerShell” и докоснете „Изпълни като администратор“.
3. Когато се появи екранът на Windows PowerShell, Тип този код и го променете съответно и натиснете Въведете да го изпълни.
powershell -ExecutionPolicy ByPass -File име на сценария.ps1
[
Просто заменете „nameofthescript.ps1” с името на скрипта, който се опитвате да изпълните.
Пример – Да предположим, че името на скрипта е „myscript“, командата ще бъде –
powershell -ExecutionPolicy ByPass -File myscript.ps1
]
РЕКЛАМА
По този начин можете да стартирате всеки скрипт, без да променяте текущата политика за изпълнение на скрипта. Но ако изпълнявате масово скриптове или създавате автоматизиран скрипт, това няма да работи.
За това трябва да потърсите следващото решение.
Поправка 2 – Променете политиката за изпълнение
Можете да промените текущите настройки на правилата за изпълнение, ако предпочитате.
1. Отново натиснете Windows ключ и напишете „powershell“.
2. По-късно щракнете с десния бутон върху „Windows PowerShell” и докоснете „Изпълни като администратор”, за да отворите терминала с административни права.
3. Когато се отвори, Тип тази команда, за да промените политиката на изпълнение по ваш избор.
Set-ExecutionPolicy RemoteSigned
[
Можете да зададете политиката за изпълнение на скрипта на четири различни режима. Това са -
Ограничен – Режимът по подразбиране, при който PowerShell не позволява стартирането на скрипт в системата.
AllSigned – Само подписаните и оторизирани скриптове ще могат да се изпълняват в този режим.
RemoteSigned – В този режим всички скриптове, които сте изтеглили, трябва да имат подпис на доверен подпис.
Неограничен – Можете да стартирате всеки скрипт, който предпочитате. Няма граници за доверен подпис или доверен издател.
Пример – Да предположим, че искате да зададете настройките на политиката на „RemoteSigned“, командата ще бъде –
Set-ExecutionPolicy RemoteSigned
]
След това натиснете “Й” и удари Въведете.
4. Ако се сблъскате с някакво съобщение за грешка, просто изпълнете тази команда.
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Отново напишете „Й” и удари Въведете.
След като направите това, можете лесно да стартирате скрипта, както предпочитате.
Тествайте, като стартирате скрипта.
ЗАБЕЛЕЖКА –
Правилата за изпълнение на скриптове обикновено са ограничени, тъй като неправилно конфигурирани или лоши скриптове могат да причинят фатални щети на системата. Така че, след като приключите с изпълнението на скрипта, можете отново да зададете политиката за изпълнение на режим „Ограничен“.
1. Достъп до PowerShell с административни привилегии.
2. Сега просто изпълнете този единствен код, за да ограничите изпълнението на всяка политика в системата.
Set-ExecutionPolicy е ограничен
3. Отново напишете „Й” и удари Въведете.
След това затворете прозореца на PowerShell.
Поправка 3 – Редактиране на системния регистър
Ако се сблъскате с някакво съобщение за грешка, докато променяте правилата за изпълнение, можете да редактирате редактора на системния регистър.
1. Просто напишете "regedit.msc” в полето за търсене в лентата на задачите.
2. След това докоснете „Редактор на регистъра” за достъп до него.
Внимание – Ще настроите регистъра си. Тъй като редакторът на системния регистър е много важна част от вашата система, трябва да направите резервно копие на системния регистър предварително.
Когато се отвори редакторът на системния регистър, докоснете „Файл“. След това докоснете „Експортиране”, за да създадете нов архив на системния регистър на вашата система.
По-късно можете да използвате този архив, ако нещата се объркат.
3. Сега разширете лявата страна по този начин -
Компютър\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\ShellIds\ScriptedDiagnostics
4. Тогава, двойно почукване на “ExecutionPolicy” двоична стойност.
5. Просто напишете "Неограничен” в полето „Данни за стойността:“.
6. След това докоснете „Добре”, за да запазите тази промяна.
След това затворете редактора на системния регистър. След като затворите редактора на системния регистър, рестартирайте системата.
След като рестартирате компютъра си, можете лесно да стартирате скрипт по ваш избор.