Pregunta ¿Cómo ejecutar un script de PowerShell?


¿Cómo ejecuto un script de PowerShell?

  • Tengo un script llamado myscript.ps1
  • Tengo todos los marcos necesarios instalados
  • Yo puse eso política de ejecución cosa
  • He seguido las instrucciones en esta página de ayuda de MSDN y estoy tratando de ejecutarlo así: powershell.exe 'C:\my_path\yada_yada\run_import_script.ps1' (con o sin --noexit)

que no devuelve exactamente nada, excepto que se genera el nombre del archivo. Sin error, sin mensaje, nada. Oh, cuando agrego -noexit, sucede lo mismo, pero permanezco dentro de PowerShell y tengo que salir manualmente.

Se supone que el archivo ps1 debe ejecutar un programa y devolver el nivel de error dependiendo de la salida de ese programa. Pero estoy bastante seguro de que aún no estoy llegando allí.

¿Qué estoy haciendo mal?


526
2018-01-09 22:19


origen


Respuestas:


  1. Inicie Windows PowerShell y espere un momento para que aparezca el símbolo del sistema del PS.
  2. Navega al directorio donde vive el script

    PS> cd C:\my_path\yada_yada\ (enter)
    
  3. Ejecute el script:

    PS> .\run_import_script.ps1 (enter)
    

¿¿Qué me estoy perdiendo??

O bien: puede ejecutar el script de PowerShell desde cmd.exe Me gusta esto:

powershell -noexit "& ""C:\my_path\yada_yada\run_import_script.ps1""" (enter)

de acuerdo a esto entrada de blog aquí

O incluso podrías ejecutar tu script Powershell desde tu aplicación C # :-)

Ejecuta asincrónicamente scripts de PowerShell desde tu aplicación C #


545
2018-01-09 22:24



Si usa PowerShell 2.0, use el parámetro -File de PowerShell.exe para invocar un script desde otro entorno como cmd.exe, por ejemplo:

Powershell.exe -File C:\my_path\yada_yada\run_import_script.ps1

171
2018-01-09 23:39



Si desea ejecutar un script sin modificar la política de ejecución de scripts predeterminada, puede usar derivación cambiar cuando se lanza Windows PowerShell.

powershell [-noexit] -executionpolicy bypass -File <Filename>

142
2018-01-30 22:23



Tipo:

powershell -executionpolicy bypass -File .\Test.ps1

NOTA: Aquí Test.ps1 es el script de PowerShell.


47
2018-02-05 22:38



He tenido el mismo problema y lo intenté y lo intenté ... Finalmente utilicé:

powershell.exe -noexit "& 'c:\Data\ScheduledScripts\ShutdownVM.ps1'"

Y ponga esta línea en un archivo por lotes, y esto funciona.


24
2018-03-08 13:47



Si solo tienes PowerShell 1.0, esto parece hacer el truco lo suficientemente bien:

powershell -command - < c:\mypath\myscript.ps1

Canaliza el archivo de script a la línea de comando de PowerShell.


19
2017-07-01 09:32



Una manera fácil es usar PowerShell ISE, abra el script, ejecute e invoque su script, función ...

Enter image description here


8
2017-11-01 16:39



Usando el archivo cmd (BAT):

@echo off
color 1F
echo.

C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File "PrepareEnvironment.ps1"

:EOF
echo Waiting seconds
timeout /t 10 /nobreak > NUL

Si necesitas ejecutar como administrador:

  1. Hacer un atajo apuntando al símbolo del sistema (lo llamé Solicitud de comando administrativo)
  2. Abra las propiedades del acceso directo y vaya a la pestaña Compatibilidad
  3. En la sección Nivel de privilegio, asegúrese de que la casilla de verificación junto a "Ejecutar este programa como administrador" esté marcada

6
2017-11-17 09:04



Muy fácil. Haga clic derecho en el archivo .ps1 en Windows y en el menú de shell haga clic en Ejecutar con PowerShell.


6
2017-08-23 14:51