Cómo corregir «la ejecución de scripts está deshabilitada en este sistema» en PowerShell en Windows 10

Si sabe cómo escribir scripts simples de PowerShell o Batch, puede automatizar bastantes cosas en Windows 10. De hecho, incluso si tiene que dedicar un poco de tiempo a escribir el script perfecto para algo, el tiempo se ahorra una vez que está listo. valdrá la pena el tiempo que dedicó a escribirlo. Dicho esto, los scripts pueden ser peligrosos, y es que cuando intentas ejecutar scripts en PowerShell, obtienes un mensaje de error bastante largo que básicamente te dice «ejecutar scripts está deshabilitado en este sistema».

Esta es una medida de seguridad en PowerShell para evitar que se ejecuten scripts maliciosos y potencialmente dañen el sistema. Por supuesto, un script que haya escrito usted mismo no será malicioso y debería poder ejecutarse. Para solucionar este problema, debe cambiar la política de ejecución en PowerShell. Así es cómo.

La corrección de secuencias de comandos en ejecución está deshabilitada en este sistema

Abra PowerShell con derechos de administrador y ejecute el siguiente comando.

Get-ExecutionPolicy -List

Esto le mostrará la política de ejecución que se ha establecido para su usuario y para su máquina. Es probable que ambos, o al menos la política CurrentUser, esté configurada como Restringida.

  Cómo solucionar problemas de audio Bluetooth en Windows 10

Para corregir el error «La ejecución de scripts está deshabilitada en este sistema», debe cambiar la política para CurrentUser. Para hacer eso, ejecute el siguiente comando.

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Confirme que desea realizar el cambio y podrá ejecutar el script.

Esto debería permitirle ejecutar la mayoría de los scripts; sin embargo, si sigue recibiendo el mismo error, probablemente necesite cambiar la política de ejecución de la máquina. Puede modificar el comando anterior para hacerlo, pero necesitará derechos de administrador para hacerlo.

Ejecute este comando.

Set-ExecutionPolicy RemoteSigned -Scope LocalMachine

Confirme que desea realizar el cambio y luego intente ejecutar el script.

  Cómo hacer una copia de seguridad del historial de chat para Skype UWP en Windows 10

Esto debería funcionar si ha escrito el script usted mismo, sin embargo, si lo descargó en línea y no está firmado, entonces debe cambiar la política de ejecución a Sin restricciones. Para hacer eso, reemplace «RemoteSigned» en todos los comandos anteriores con «Unrestricted». Tenga mucho cuidado con los scripts que ejecuta si los está descargando. Pueden ser peligrosos.

Set-ExecutionPolicy

Este es un comando bastante simple para configurar la política de ejecución en PowerShell. Este comando puede tener cuatro parámetros o estados diferentes: Restringido, AllSigned, RemoteSigned y Unrestricted.

El modificador -Scope define a qué se aplica el cambio de política. Cuando ingresa «CurrentUser», se aplica solo al usuario actual, y cuando ingresa «LocalMachine», se aplica a todo el sistema.

  Cómo cambiar la fecha de 'creación' de un archivo en Windows 10