Cómo ejecutar el archivo ps1 desde PowerShell
Ejecutando desde la línea de comandos de PowerShell
Para ejecutar un script de PowerShell (archivo .ps1) desde una línea de comando de PowerShell:
- Inicie PowerShell como administrador y espere a que aparezca el mensaje
PS>. - Navegue hasta el directorio que tiene su archivo de script de PowerShell.
- Escriba
.\seguido deScriptFileName.ps1y presione Enter para ejecutar el script.
Ejecute desde la línea de comandos de PowerShell:
.\test.ps1
<#
test.ps1 has the following command that will
be executed when we will run the script
Write-Host "You've successfully run PowerShell Script."
#>PRODUCCIÓN :
You've successfully run PowerShell Script.Debe cumplir con algunos requisitos previos para ejecutar el script de PowerShell siguiendo los pasos mencionados anteriormente. Primero, debe poder ejecutar PowerShell como administrador. En segundo lugar, debe poder Omitir la política de ejecución de PowerShell o establecerla en un valor permisivo.
Ahora, el punto es, ¿por qué tenemos que establecer o ByPass la política de ejecución? Esto se debe a que la política de ejecución de PowerShell está configurada en Restricted debido a su comportamiento predeterminado, lo que significa que no puede ejecutar el archivo .ps1. Para la política de ejecución, tenemos algunas opciones que se enumeran a continuación:
Restringido: es la opción predeterminada, que no permite ejecutar un script de PowerShell.Sin restricciones- No podemos ejecutar ningún script; muestra advertencias para los scripts descargados.AllSigned: permite ejecutar scripts firmados únicamente de editores confiables.ByPass: nos permite ejecutar todos los scripts sin ninguna advertencia.RemoteSigned: esta opción necesita una firma digital para los scripts descargados. Podemos ejecutar scripts escritos localmente y desbloquear los scripts descargados para ejecutarlos sin la firma.
Puede consultar esto para obtener más detalles sobre estas opciones. También podemos ejecutar .ps1 haciendo clic derecho en el archivo de script y seleccionando Ejecutar con PowerShell.
Ejecutando desde la línea de comandos de Windows
Utilice powershell -noexit para ejecutar un script de PowerShell desde la línea de comandos de Windows (cmd.exe).
Ejecutar desde la línea de comandos de Windows:
powershell -noexit "& ""E:\Test\test.ps1"""
<#
test.ps1 has the following command that will
be executed when we will run the script
Write-Host "You've successfully run PowerShell Script."
#>PRODUCCIÓN :
You've successfully run PowerShell Script.El comando anterior se utilizó para ejecutar el script de PowerShell especificado.
Dividámoslo en partes para comprender cada parte.
Primero, usamos powershell para iniciar el entorno de PowerShell mientras que el parámetro -noexit se usó para mantener abierta la ventana de PowerShell incluso después de que el script terminó de ejecutarse. De esta manera, podemos ver el resultado generado por el archivo de script que acaba de ejecutar. A continuación, utilizamos el operador de llamada representado por el signo & para ejecutar el comando, bloque de script o expresión.
Este comando se ejecuta desde el
Diálogo de ejecución de Windows(abierto con tecla de Windows+ R) o desde el símbolo del sistema como hicimos anteriormente. Tenga en cuenta que el resultado será visible en la ventana de PowerShell si lo ejecuta desdeWindows Run Dialog. Por otro lado, si lo ejecuta desde el símbolo del sistema de Windows, verá el resultado sin abrir la ventana de PowerShell.
Uso del cmdlet Invocar expresión
Para ejecutar un archivo ps1 desde la línea de comandos de PowerShell:
- Inicie PowerShell como administrador y espere a que aparezca el mensaje
PS>. - Navegue hasta la ubicación donde se encuentra su archivo de secuencia de comandos de PowerShell.
- Utilice el cmdlet
Invoke-Expressionpara ejecutar el script de PowerShell.
Utilice el cmdlet Invoke-Expression:
Invoke-Expression .\test.ps1
<#
test.ps1 has the following command that will
be executed when we will run the script
Write-Host "You've successfully run PowerShell Script."
#>PRODUCCIÓN :
You've successfully run PowerShell Script.El cmdlet Invoke-Expression se utiliza para ejecutar la expresión o los comandos en nuestra computadora local. Ejecuta o evalúa la cadena dada como un comando y devuelve los resultados del comando o expresión especificado.
Se trata de cómo ejecutar el archivo ps1 desde PowerShell.
