Accéder au contenu principal

PowerShell : Quelques outils de développement adaptés

 Pour tous ceux qui travaillent avec PowerShell, il est un fait clair :

  • Il n'existe pas encore d'outil réel de développement de script (comme VS.NET pour .NET)

On peut en revanche trouver quelques solutions pratiques pour ceux qui trouvent notepad impossible à utiliser dans ce contexte :

  • Tous les éditeurs de texte classiques
  • Des éditeurs spécifiques
    • PowerShell Analyzer (Intéressant pour ceux qui ne font que du PowerShell, beaucoup de points pratiques comme la complétion, l'aide, les bibliothèques de CMDLets, ...)
    • PowerGUI (Outil gratuit fourni par QUEST)
      • Il est plutôt destiné a des administrateurs ne souhaitant pas réellement développer de script, mais plutôt utiliser des bibliothèques existantes

image

    • Notepad for PowerShell ou PowerGUI Script Editor (Inclu dans PowerGUI) qui propose des fonctionnalités avancées comme l'auto-complétion

Attention : Il faut noter que pour installer certaines bibliothèques de scripts (Network, AD, ...), il vous faut installer des composants additionels de QUEST sur la machine comme l'explique le message d'erreur :

image

Un point intéressant est le moteur de débugging qui évite donc d'ouvrir plusieurs fenêtres (celle de l'éditeur du script et celle de la commande PS).

Pour ma part, je suis adepte de NotePad ++, qui est très léger (moins de 2 MO), gratuit et qui peut directement être copié sur les serveur sans nécessiter d'installation.

Il est en possible nativement d'utiliser le modèle de language Shell (très proche du PowerShell) pour ses scripts, mais le mieux est d'ajouter un User Language comme nous le propose Jon Galloway sur son Blog :

Il a donc fournit un fichier XML sur le site du Bugtracking de NotePad++ :

Il suffit alors de télécharger ce fichier, le renommer en "userDefineLang.xml" et le placer dans le même répertoire que l'exécutable de Notepad++.

Vous pouvez alors ouvrir vos script PS1 dans NotePad++ et il seront directement associés à cette définition :

image

Donc chacun peut choisir son outil préféré, mais il commence à y avoir du choix.

Romelard Fabrice [MVP]

Commentaires

Posts les plus consultés de ce blog

Série de Videos sur Home Assistant intégrant la production Photovoltaïque

 Un certain nombre de vidéos sont en ligne pour intégrer sa production photovoltaïque dans Home Assistant en partant de la base. Installation de Home Assistant: On peut ensuite intégrer les composant des Micro-Onduleurs Enphase, mais aussi les batteries Enphase: Ou encore le composant de contrôle Ecojoko: Ce qui permet alors de faire des comparaisons entre les valeurs capturées: Des videos seront encore publiés dans les prochaines semaines sur différents aspects de cette solution. Fab

Nouveau Scripts PowerShell publiés pour gérer les Storage Accounts dans Azure Cloud

Deux scripts sont en lignes pour nettoyer des Storage Account dans Azure Cloud: Supprimer les Blobs d'un container existant https://techcommunity.microsoft.com/discussions/azure/powershell-script-to-remove-all-blobs-from-storage-account/4357815 ------------------------------------------------------- [string]$myConnectionString = "DefaultEndpointsProtocol=https;AccountName=YourStorageAccountName;AccountKey=YourKeyFromStorageAccountConnectionString;EndpointSuffix=core.windows.net" [string]$ContainerName = "YourBlobContainerName" [int]$blobCountAfter = 0 [int]$blobCountBefore = 0 $context = New-AzStorageContext -ConnectionString $myConnectionString $blobCountBefore = (Get-AzStorageBlob -Container $ContainerName -Context $context).Count Write-Host "Total number of blobs in the container Before deletion: $blobCount" -ForegroundColor Yellow Get-AzStorageBlob -Container $ContainerName -Context $context | ForEach-Object {     $_ | Remove-AzureStorageBlob   # o...

Série de vidéos sur le montage d'une serre horticole ACD

 Episode 1: Préparation du terrain Episode 2: Montage de la serre en elle même Episode 3: Finalisation avec le montage électrique alimentant la serre Bon visionnage Fab