PowerShell est un framework d'automatisation et de configuration des tâches basé sur la ligne de commande et le script, développé par Microsoft. Voici une présentation générale de PowerShell :
- Environnement Interactif et Langage de Script : PowerShell est à la fois une interface en ligne de commande (CLI) et un langage de script. Cela signifie que vous pouvez exécuter des commandes interactives ou écrire des scripts pour automatiser des tâches complexes.
- Cmdlets : Les commandes dans PowerShell sont appelées "cmdlets" (prononcé "command-lets"). Les cmdlets sont des commandes légères qui effectuent des tâches spécifiques, comme obtenir des informations sur un processus ou arrêter un service.
- Basé sur des Objets : Contrairement à d'autres shells qui fonctionnent sur du texte brut, PowerShell est basé sur des objets .NET. Cela signifie que lorsque vous exécutez une commande, elle renvoie un objet avec des propriétés et des méthodes que vous pouvez manipuler directement.
- Extensibilité : Les utilisateurs peuvent créer leurs propres cmdlets, fonctions, modules et scripts pour étendre les fonctionnalités de PowerShell. Plusieurs modules sont déjà inclus avec PowerShell, et d'autres peuvent être installés via des référentiels comme la galerie PowerShell.
- Accès à des Services et des Technologies : PowerShell peut accéder à une large gamme de services et de technologies, tels que les systèmes de fichiers, les registres Windows, les bases de données, et les systèmes basés sur le web. Il est couramment utilisé pour administrer et automatiser des tâches sur des systèmes Windows, mais il est également disponible sur Linux et macOS.
- Versioning : PowerShell a connu plusieurs versions. La version initiale était basée sur .NET Framework, mais avec PowerShell Core (commençant par la version 6), il est devenu open-source et a été construit sur .NET Core, le rendant multiplateforme. Depuis la version 7, il a été renommé simplement "PowerShell", marquant une convergence avec la version Windows traditionnelle.
- Sécurité : PowerShell comprend plusieurs fonctionnalités de sécurité, telles que l'exécution restreinte de scripts, pour protéger contre l'exécution de scripts non approuvés.