> Tech > Monad: un langage de scripting extrêmement simple et puissant

Monad: un langage de scripting extrêmement simple et puissant

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Exchange 12 sera intégralement administrable en ligne de commande à l’aide du puissant langage de script appelé MONAD. Ce langage n’est pas dédié à Exchange car on le retrouvera également dans Vista, remplaçant de Windows XP. MONAD est basé sur des cmdlet. Plus de 100 cmdlet sont dédiés à Exchange.

Monad: un langage de scripting extrêmement simple et puissant

L’intégralité de ce qui est réalisable au travers de l’interface graphique d’administration est également réalisable par une commande MONAD.

Nous n’allons pas dédier l’intégralité de la suite de cet article à MONAD car cela n’aurait pas grand intérêt pour le moment et de nombreux articles lui seront très probablement dédiés. En attendant, voici quelques exemples de commande MONAD qui vous donnerons une idée de la puissance de ce langage.

• Il existe des commandes simples comme Get-Storage- CopyStatus (cette commande a pour effet de vous donner l’état de la sauvegarde précédente), Get-mailboxstatistics –server $servername (qui affiche les statistiques des boîtes aux lettres d’un server. Sous Exchange 2003, il fallait écrire 18 lignes de script pour obtenir le même résultat) ou newmailbox –id domain\user1 –database “First Storage Group\ Private MDB” (création d’une boîte aux lettres pour l’utilisateur “user1” dans la base “Private MDB”)
• Certaines commandes qui permettent de faire des opérations complexes comme Get-Mailbox –server PARIS | move-mailbox –targetDatabase “NANTES\DB1” (cette commande déplace l’intégralité des boîtes aux lettres du serveur PARIS vers la base DB1 du serveur NANTES).
• Mais il est également possible de combiner dans la même ligne, plusieurs commandes MONAD comme la combinaison de “Get-DistributionGroup”, “Get-DistributionGroupMember”, “Set-Mailbox”. Cela peut donner : Get-DistributionGroup “RemoteUsers” | Get-Distribution- GroupMember | Set-Mailbox –ProhibitSendQuota 1000 . Grace à MONAD, cette simple ligne permet de fixer une valeur limite d’envoi de 1000 Ko à l’ensemble des membres de la liste de distribution appelée “RemoteUsers”.
• Il est possible d’introduire des opérateurs dans les commandes, comme un opérateur de comparaison de chaines de caractère. Get- StorageGroup | where { $_.Name –imatch “temp” } | Remove-StorageGroup –confirm (supprime après confirmation, l’ensemble des groupes de stockage dont le nom contient le mot “temp”).
• Pour terminer nos exemples, MONAD permet d’automatiser très facilement des tâches d’administration qui seraient complexes à réaliser par l’interface graphique. Par exemple : Get-Message | where { $_.From -ilike *stephane* } | remove-message (supprime l’ensemble des messages en file d’attente envoyés par l’utilisateur “stephane”).

Téléchargez cette ressource

Les mégatendances cybersécurité et cyber protection 2024

Les mégatendances cybersécurité et cyber protection 2024

L'évolution du paysage des menaces et les conséquences sur votre infrastructure, vos outils de contrôles de sécurité IT existants. EPP, XDR, EDR, IA, découvrez la synthèse des conseils et recommandations à appliquer dans votre organisation.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010