900 votes

Comment faire pour exécuter un script PowerShell?

Les gars et les Filles, vraiment une question stupide:

Comment puis-je exécuter un script PowerShell?

  • J'ai un script nommé myscript.ps1
  • J'ai toutes les structures nécessaires installé
  • J'ai mis que de l'exécution de la politique de chose
  • J'ai suivi les instructions sur cette page d'aide MSDN et suis en train de l'exécuter comme suit: powershell.exe 'C:\my_path\yada_yada\run_import_script.ps1' (avec ou withot --noexit)

ce qui revient exactement rien, sauf que le nom de fichier de sortie. Aucune erreur, aucun message, rien. Oh, quand j'ajoute -noexit, la même chose se passe mais je reste dans Powershell, et de quitter manuellement.

La ps1 fichier est censé exécuter un programme, et le retour de l'erreur dépend du niveau sur le programme de la sortie. Mais je suis assez sûr que je ne suis même pas y arriver encore.

Ce que je fais mal?

917voto

marc_s Points 321990
  1. Lancer PowerShell
  2. Naviguez jusqu'au répertoire où le script vie

    PS> cd C:\my_path\yada_yada\ (enter)
    
  3. Exécuter le script:

    PS> .\run_import_script.ps1 (enter)
    

Ce qui me manque??

Ou: vous pouvez exécuter le script PowerShell à partir de cmd.exe comme ceci:

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

selon ce billet de blog ici

Ou vous pouvez même exécuter votre script Powershell à partir de votre application en C#: -)

De façon asynchrone exécuter des scripts PowerShell à partir de votre application en C#

297voto

Keith Hill Points 73162

Si vous êtes sur PowerShell 2.0 utilisation PowerShell.exe's-Fichier de paramètre pour appeler un script à partir d'un autre environnement comme cmd.exe par exemple:

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

224voto

Chingiz Musayev Points 602

Si vous souhaitez exécuter un script, sans modifier le script par défaut de la stratégie d'exécution, vous pouvez utiliser le bypass switch lors du lancement de Windows PowerShell.

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

36voto

Dennis Points 631

J'ai eu le même problème, et essayé et essayé... enfin j'ai utilisé:

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

Et mettre cette ligne dans un lot de fichier, et cela fonctionne.

22voto

AndyM Points 1339

Si vous n'avez powershell 1.0, ce qui semble faire le tour assez bien.

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

C'tuyaux le fichier de script à la ligne de commande powershell.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X