Ако знаете как да напишете прост PowerShell илиПакетни скриптове можете да автоматизирате доста неща в Windows 10. Всъщност, дори и да ви се наложи да отделите малко време, за да напишете перфектния скрипт за нещо, спестеното време, когато е добре да отидете, ще струва времето, което сте прекарали в писането му , Това каза, че скриптовете могат да бъдат опасни, което е, когато се опитате да стартирате скриптове в PowerShell, получавате доста дълго съобщение за грешка, което по същество ви казва „пускането на скриптове е забранено в тази система“.
Това е мярка за сигурност в PowerShell дапредотвратяване на стартирането на злонамерени скриптове и потенциално увреждане на системата. Разбира се, сценарий, който сте написали сами, няма да бъде злонамерен и трябва да може да се изпълнява. За да отстраните този проблем, трябва да промените политиката за изпълнение в PowerShell. Ето как.
Поправя стартираните скриптове е деактивирана в тази система
Отворете PowerShell с администраторски права и изпълнете следната команда.
Get-ExecutionPolicy -List
Това ще ви покаже политиката за изпълнение, която е зададена за вашия потребител и за вашата машина. Вероятно е и двете, или най-малкото политиката на CurrentUser да са зададени на Restricted.
За да поправите грешката „изпълняваните скриптове са забранени в тази система“, трябва да промените правилата за CurrentUser. За целта изпълнете следната команда.
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Потвърдете, че искате да направите промяната и ще можете да стартирате скрипта.
Това трябва да ви позволи да стартирате повечето скриптовеако все пак получавате същата грешка, вероятно е необходимо да промените правилата за изпълнение на машината. Можете да промените предишната команда, за да го направите, но за това ще са ви необходими администраторски права.
Изпълнете тази команда.
Set-ExecutionPolicy RemoteSigned -Scope LocalMachine
Потвърдете, че искате да направите промяната и опитайте да стартирате скрипта.
Това трябва да направи трика, ако сте написалискриптирайте сами обаче, ако сте го изтеглили онлайн и той не е подписан, тогава трябва да промените политиката за изпълнение на неограничена. За целта заменете „RemoteSigned“ във всички горепосочени команди с „Неограничени“. Бъдете много внимателни кои скриптове стартирате, ако ги изтегляте. Те могат да бъдат опасни.
Set-ExecutionPolicy
Това е доста проста команда за настройка на политиката за изпълнение на PowerShell. Тази команда може да има четири различни параметъра или състояния: Ограничени, AllSigned, RemoteSigned и неограничени.
Превключвателят -Scope определя какво се променя в политикатасе прилага към. Когато въведете „CurrentUser“, той се прилага само за текущия потребител, а когато въведете „LocalMachine“, се прилага към цялата система
Коментари