Exécuter un script PowerShell à partir d'un fichier batch

Rohan Timalsina 30 janvier 2023
  1. Utiliser le paramètre -File pour exécuter un script PowerShell à partir d’un fichier batch
  2. Utilisez RemoteSigned comme -ExecutionPolicy pour exécuter un script PowerShell à partir d’un fichier batch
  3. Utiliser le commutateur Bypass pour exécuter un script PowerShell à partir d’un fichier batch
  4. Exécuter un script PowerShell à partir d’un fichier batch en ouvrant PowerShell en tant qu’administrateur
Exécuter un script PowerShell à partir d'un fichier batch

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.
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

Article connexe - PowerShell Script