Exécuter un script PowerShell à partir d'un fichier batch
-
Utiliser le paramètre
-File
pour exécuter un script PowerShell à partir d’un fichier batch -
Utilisez
RemoteSigned
comme-ExecutionPolicy
pour exécuter un script PowerShell à partir d’un fichier batch -
Utiliser le commutateur
Bypass
pour exécuter un script PowerShell à partir d’un fichier batch - Exécuter un script PowerShell à partir d’un fichier batch en ouvrant PowerShell en tant qu’administrateur
Un script PowerShell est un fichier texte utilisant l’extension .ps1
contenant un ensemble de commandes. PowerShell exécute ces commandes dans l’ordre.
Un fichier batch est un fichier texte utilisant l’extension .bat
. Il contient également une collection de commandes qui sont exécutées en séquence.
Les commandes peuvent être exécutées en ouvrant le fichier .bat
. Ce tutoriel vous apprendra à exécuter un script PowerShell à partir d’un fichier batch.
Nous avons créé un script PowerShell, myscript.ps1
, contenant la commande suivante.
Write-Host "Your script is executed successfully."
Nous avons également créé un fichier batch test.bat
pour exécuter le script PowerShell ci-dessus. Nous allons utiliser le fichier batch test.bat
pour exécuter un script PowerShell myscript.ps1
.
Utiliser le paramètre -File
pour exécuter un script PowerShell à partir d’un fichier batch
Vous pouvez invoquer un script PowerShell en utilisant le paramètre -File
. C’est la commande simple pour exécuter un script PowerShell à partir de l’invite de commande.
La commande suivante est utilisée dans le fichier test.bat
pour exécuter un script PowerShell. La commande @echo off
désactive l’écho ou empêche l’affichage du contenu du fichier batch.
La commande pause
arrête l’exécution d’un fichier batch jusqu’à ce que vous appuyiez sur n’importe quelle touche sauf Ctrl, Shift ou NumberLock.
@echo off
powershell -File C:\New\myscript.ps1
pause
Production :
Your script is executed successfully.
Press any key to continue . . .
Utilisez RemoteSigned
comme -ExecutionPolicy
pour exécuter un script PowerShell à partir d’un fichier batch
Vous pouvez définir RemoteSigned
comme -ExecutionPolicy
pour exécuter un script PowerShell à partir d’un fichier batch. Le paramètre -ExecutionPolicy
spécifie la politique d’exécution de PowerShell.
@echo off
powershell -ExecutionPolicy RemoteSigned -File C:\New\myscript.ps1
pause
Production :
Your script is executed successfully.
Press any key to continue . . .
Utiliser le commutateur Bypass
pour exécuter un script PowerShell à partir d’un fichier batch
Vous pouvez également utiliser le Bypass
comme politique d’exécution pour exécuter un script PowerShell à partir d’un fichier batch.
@echo off
powershell -ExecutionPolicy Bypass -File C:\New\myscript.ps1
pause
Production :
Your script is executed successfully.
Press any key to continue . . .
Ou, vous pouvez également exécuter la commande suivante.
@echo off
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& 'C:\New\myscript.ps1'"
pause
Production :
Your script is executed successfully.
Press any key to continue . . .
Exécuter un script PowerShell à partir d’un fichier batch en ouvrant PowerShell en tant qu’administrateur
La commande suivante ouvre PowerShell en tant qu’administrateur pour exécuter un script PowerShell. Lorsque vous ouvrez un fichier batch et sélectionnez Yes
, la sortie sera affichée sur Windows PowerShell.
@echo off
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""C:\New\myscript.ps1""' -Verb RunAs}"
ps1'"
pause
Production :
Your script is executed successfully.