<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog de Bruno Orsier &#187; PowerShell</title>
	<atom:link href="https://blog.developpez.com/bruno-orsier/pcategory/outils-pour-developpeurs/powershell/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/bruno-orsier</link>
	<description></description>
	<lastBuildDate>Thu, 04 Apr 2013 16:06:21 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Powershell, suppression sélective de fichiers</title>
		<link>https://blog.developpez.com/bruno-orsier/p8563/outils-pour-developpeurs/powershell/powershell_suppression_selective_de_fich</link>
		<comments>https://blog.developpez.com/bruno-orsier/p8563/outils-pour-developpeurs/powershell/powershell_suppression_selective_de_fich#comments</comments>
		<pubDate>Wed, 27 Jan 2010 09:51:06 +0000</pubDate>
		<dc:creator><![CDATA[Bruno Orsier]]></dc:creator>
				<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Voici un nouvel exemple d&#8217;utilisation de Powershell, histoire de peut-être vous donner envie de pratiquer ce shell bien utile. Dans mes tests, j&#8217;ai souvent un processus qui tourne en boucle, d&#8217;ailleurs grâce un script posté dans un billet précédent. Ce processus génère un fichier de log à chaque fois, ce qui me fait des dizaines de milliers de fichiers. Pour éviter de remplir le disque dur, je voudrais garder uniquement les fichiers de log qui [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Voici un nouvel exemple d&rsquo;utilisation de Powershell, histoire de peut-être vous donner envie de pratiquer ce shell bien utile. Dans mes tests, j&rsquo;ai souvent un processus qui tourne en boucle, d&rsquo;ailleurs grâce un script posté dans un <a href="http://blog.developpez.com/bruno-orsier/p8505/outils-pour-developpeurs/powershell/un-exemple-avec-powershell/">billet précédent</a>. Ce processus génère un fichier de log à chaque fois, ce qui me fait des dizaines de milliers de fichiers. Pour éviter de remplir le disque dur, je voudrais garder uniquement les fichiers de log qui présentent un intérêt, par exemple ceux qui contiennent le mot ERROR. C&rsquo;est facile en PowerShell, avec un peu de pratique on peut le faire directement sur la ligne de commande :</p>
<p>
<span id="more-51"></span></p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image.png" target="_blank"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image_thumb.png" width="989" height="138" /></a> </p>
<p><em>(le message  d&rsquo;erreur vient d&rsquo;un fichier en cours d&rsquo;écriture)</em></p>
<p>Après avoir mis cela au point sur la ligne de commande comme ci-dessus, je met cette commande dans un fichier de script pour la réutiliser plus tard :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image_3.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image_thumb_3.png" width="499" height="235" /></a> </p>
<p>On peut noter dans le script la barre verticale, indiquant un pipeline. Le pipeline passe la sortie de la première commande (la liste de fichier résultant de dir) à la deuxième commande qui consiste en un <em>foreach</em>. Dans le bloc du <em>foreach</em> on référence l&rsquo;objet courant (le fichier) avec la variable spéciale <font color="#ff0000">$_</font>.  <em>foreach</em> est un alias pour <em>ForEach-Object</em> (et peut encore se raccourcir en &laquo;&nbsp;%&nbsp;&raquo;, comme dans l&rsquo;exemple ci-dessous).</p>
<p>Simple, non ?</p>
<p>Un autre exemple dans la même veine consiste à supprimer les fichiers .DATA générés par mes expériences, mais pas trop tôt afin de ne pas interférer avec les analyses en cours &#8211; j&rsquo;attends donc 30 minutes par exemple. Voici un script pour faire cela (j&rsquo;ai encadré en rouge le calcul sur les dates) :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image_4.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image_thumb_4.png" width="580" height="400" /></a> </p>
<p>Voilà le résultat sur la console :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image_5.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/814e49b529a8_B95A/image_thumb_5.png" width="762" height="129" /></a> </p>
<p>Il restera à mieux formater le taux de génération !</p>
<p>Le même script sous forme de code copiable, au cas où ca vous intéresse de le récupérer :</p>
<div id="codeSnippetWrapper">
<pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: &#39;Courier New&#39;, courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"><br />$DELAY=60*15<br /><br />$total_deleted = 0<br /><br /><span style="color: #0000ff">while</span> ($True) {<br />    $deleted = 0<br />    dir c:\data -recurse -include *.data | % { <br />        <span style="color: #0000ff">if</span> ( ((get-date)-$_.LastWriteTime).TotalMinutes -gt 30) {<br />                del $_ ; $deleted += 1<br />        }<br />    }<br />    $total_deleted += $deleted<br />    $generation_rate = ($deleted / $DELAY) * 60<br />        <br />    write-host (get-date), `<br />                <span style="color: #006080">"total already deleted "</span>, $total_deleted, `<br />                <span style="color: #006080">" generation rate "</span>, $generation_rate, <span style="color: #006080">" / minute"</span><br />                <br />    Sleep -Seconds $DELAY        <br />}<br /></pre>
<p></div>
<p>Voilà des exemples que j&rsquo;aurais été bien incapable de réaliser en DOS, et qui sont très faciles à faire en PowerShell.</p>
<p>Et vous, quels sont les scripts qui vous simplifient la vie ?</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Surveillance de processus Windows : PowerShell au lieu de perfmon !</title>
		<link>https://blog.developpez.com/bruno-orsier/p8537/outils-pour-developpeurs/powershell/surveillance_de_processus_windows_powers</link>
		<comments>https://blog.developpez.com/bruno-orsier/p8537/outils-pour-developpeurs/powershell/surveillance_de_processus_windows_powers#comments</comments>
		<pubDate>Wed, 20 Jan 2010 11:42:03 +0000</pubDate>
		<dc:creator><![CDATA[Bruno Orsier]]></dc:creator>
				<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Je dois souvent surveiller des processus, typiquement pour voir comment évolue leur consommation de mémoire, le nombre de handles, de threads etc. Pour cela, perfmon.exe est un outil bien approprié, et permet d&#8217;afficher beaucoup de compteurs de performance Windows, et également de les sauvegarder dans un fichier journal : Malheureusement c&#8217;est un outil bien peu ergonomique, et assez fastidieux à régler (on peut tout de même sauver les paramètres dans un fichier .msc, afin de [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Je dois souvent surveiller des processus, typiquement pour voir comment évolue leur consommation de mémoire, le nombre de handles, de threads etc. Pour cela, perfmon.exe est un outil bien approprié, et permet d&rsquo;afficher beaucoup de compteurs de performance Windows, et également de les sauvegarder dans un fichier journal :</p>
<p> <span id="more-50"></span>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_thumb.png" width="504" height="246" /></a> </p>
<p>Malheureusement c&rsquo;est un outil bien peu ergonomique, et assez fastidieux à régler (<em>on peut tout de même sauver les paramètres dans un fichier .msc, afin de ne pas tout recommencer à zéro à chaque fois</em>). En particulier je déteste le choix des compteurs dans des listes déroulantes minuscules </p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_3.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_thumb_3.png" width="391" height="194" /></a> </p>
<p>ainsi que le choix des échelles pour lesquelles il faut compter les chiffres à la main (pas bien agréable quand les compteurs sont dans les 10000000 ou les 1000000000) :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_4.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_thumb_4.png" width="91" height="234" /></a> </p>
<p>De plus on ne peut pas faire afficher des calculs complémentaires &#8211; souvent j&rsquo;aimerais voir l&rsquo;écart entre deux mesures successives, afin de connaître la &laquo;&nbsp;vitesse&nbsp;&raquo; de l&rsquo;évolution du compteur.</p>
<p>Aussi j&rsquo;utilise de plus en plus PowerShell pour mes activités de surveillance de processus. Voici par exemple un petit script qui suit la mémoire utilisée.</p>
<p>Tout d&rsquo;abord j&rsquo;ai mis au point le principe directement sur la ligne de commande (le processus à surveiller est nxServer.exe) :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_5.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_thumb_5.png" width="644" height="26" /></a> </p>
<p>Notez que PowerShell manipule directement 1GB, 1MB, 1KB, xKB. Bien pratique pour ne pas se prendre la tête avec les grands nombres.</p>
<p>Une fois satisfait du principe, j&rsquo;ai sauvé la ligne de commande dans un fichier :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_6.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_thumb_6.png" width="403" height="40" /></a> </p>
<p>fichier que j&rsquo;ai ensuite édité avec <a href="http://powergui.org/index.jspa">PowerGUI Script Editor</a> pour ajouter quelques fonctionnalités supplémentaires (affichage à l&rsquo;écran + sauvegarde dans un fichier, calcul de la différence entre deux mesures successives) :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image24.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image24_thumb.png" width="504" height="238" /></a> </p>
<p>Et voilà :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_7.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/PowerShellaulieudeperfmon_928B/image_thumb_7.png" width="554" height="76" /></a> </p>
<p>Bon d&rsquo;accord ce n&rsquo;est plus très utile de diviser par 1GB, j&rsquo;ai corrigé la fuite mémoire qui faisait que l&rsquo;on dépassait le Giga &#8211; mais je n&rsquo;ai pas envie de la réintroduire juste pour la démo !</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Un exemple avec PowerShell</title>
		<link>https://blog.developpez.com/bruno-orsier/p8505/outils-pour-developpeurs/powershell/un_exemple_avec_powershell</link>
		<comments>https://blog.developpez.com/bruno-orsier/p8505/outils-pour-developpeurs/powershell/un_exemple_avec_powershell#comments</comments>
		<pubDate>Mon, 11 Jan 2010 06:50:23 +0000</pubDate>
		<dc:creator><![CDATA[Bruno Orsier]]></dc:creator>
				<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Voici un autre billet initialement publié sur notre blog interne, et que je republie en externe. Pour montrer comment j&#8217;utilise PowerShell (le shell remplaçant DOS, et développé par Microsoft sur .NET), voici un petit exemple de lancement de programme en boucle. C&#8217;est le script que j&#8217;utilise en ce moment pour essayer de reproduire un gel d&#8217;un de nos logiciels qui est constaté chez un client. [Contexte : ce gel arrive 2 à 3 fois par [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><em>Voici un autre billet initialement publié sur notre blog interne, et que je republie en externe.</em> </p>
<p>Pour montrer comment j&rsquo;utilise PowerShell (le shell remplaçant DOS, et développé par Microsoft sur .NET), voici un petit exemple de lancement de programme en boucle. C&rsquo;est le script que j&rsquo;utilise en ce moment pour essayer de reproduire un gel d&rsquo;un de nos logiciels qui est constaté chez un client. </p>
<p>[<strong>Contexte</strong> : ce gel arrive 2 à 3 fois par an, et uniquement chez ce client &#8211; la fréquence d&rsquo;apparition est donc très faible, c&rsquo;est pourquoi je suis conduit à faire des centaines de milliers d&rsquo;exécution pour essayer de le reproduire &#8211; et c&rsquo;est pourquoi l&rsquo;automatisation via PowerShell est très utile]</p>
<p>Ce script maintient en exécution simultanée x instances d&rsquo;un programme donné, jusqu&rsquo;à ce qu&rsquo;on parvienne à un nombre donné de lancements.</p>
<p><span id="more-49"></span></p>
<p>Ce premier fragment de code ci-dessous montre plusieurs aspects intéressants de PowerShell :</p>
<ul>
<li>on peut écrire des fonctions </li>
<li>on dispose d&rsquo;environnements de développement modernes, comme <a href="http://www.powergui.org/index.jspa">PowerGUI</a> par exemple </li>
<li>on a un accès direct au framework .NET, comme le montre l&rsquo;appel <strong>[diagnostics.process]::start</strong> : comme il n&rsquo;y a pas de commande équivalent dans le shell, on fait faire le travail par .NET directement </li>
<li>on manipule des objets (voir les appels de méthodes comme .Count) </li>
<li>les opérateurs booléens ne sont pas très naturels : -eq, -lt, -ge etc. C&rsquo;est mon seul reproche à ce langage ! </li>
</ul>
<p><img alt="" src="http://ftp-developpez.com/bruno-orsier/blog/images/powershell_07DEC2009_1.jpg" width="500" height="289" /> </p>
<p><em>Note : quand je fais ces essais directement sur mon PC, j&rsquo;ai constaté qu&rsquo;il  était très utile de baisser un peu la priorité des processus, afin de garder un certain contrôle sur le PC. Voici comment faire :</em></p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/70cd513be667_71EA/image.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/70cd513be667_71EA/image_thumb.png" width="554" height="52" /></a> </p>
<p>Voici maintenant le reste du script qui utilise les fonctions ci-dessus, une simple boucle :</p>
<p><img alt="" src="http://ftp-developpez.com/bruno-orsier/blog/images/powershell_07DEC2009_2.jpg" width="500" height="201" /> </p>
<p>Le langage fournit donc tout ce que que l&rsquo;on peut espérer d&rsquo;un langage de programmation moderne. Il est sans doute possible de faire tout cela en DOS, mais explorer DOS m&rsquo;a toujours paru au dessus de mes forces ! Dans le passé j&rsquo;ai toujours préférer travailler avec <a href="http://www.cygwin.org/cygwin/">cygwin</a> pour profiter des possibilités de scripts à la Unix &#8211; ce n&rsquo;est plus justifié aujourd&rsquo;hui avec PowerShell, une bonne solution native sous Windows !</p>
<p><em>Note 27 janvier 2010 : merci à </em><a href="http://www.developpez.net/forums/u11418/laurent-dardenne/"><em>Laurent Dardenne</em></a><em> de m’avoir signalé les liens erronés vers les images.</em></p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Des clics en moins grâce à PowerShell</title>
		<link>https://blog.developpez.com/bruno-orsier/p8500/outils-pour-developpeurs/powershell/des_clics_en_moins_grace_a_powershell</link>
		<comments>https://blog.developpez.com/bruno-orsier/p8500/outils-pour-developpeurs/powershell/des_clics_en_moins_grace_a_powershell#comments</comments>
		<pubDate>Fri, 08 Jan 2010 17:23:04 +0000</pubDate>
		<dc:creator><![CDATA[Bruno Orsier]]></dc:creator>
				<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Voici un exemple de billet publié sur notre blog interne. Mon but est d&#8217;alimenter le blog interne avec du contenu utile pour mes collègues, tout en me servant de ce blog pour remplacer les cahiers où je notais autrefois les trucs et astuces que j&#8217;apprenais. Le contexte : j&#8217;apprends régulièrement un peu de PowerShell, le nouveau shell de Microsoft, car cela me rend service dans mon travail, et je pense qu&#8217;il serait utile aussi à [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Voici un exemple de billet publié sur notre <a href="http://blog.developpez.com/bruno-orsier/p8499/developpement-agile/demarche-de-caddying-et-blog-interne/">blog interne</a>. Mon but est d&rsquo;alimenter le blog interne avec du contenu utile pour mes collègues, tout en me servant de ce blog pour remplacer les cahiers où je notais autrefois les trucs et astuces que j&rsquo;apprenais. Le contexte : j&rsquo;apprends régulièrement un peu de <a href="http://en.wikipedia.org/wiki/Windows_PowerShell">PowerShell</a>, le nouveau shell de Microsoft, car cela me rend service dans mon travail, et je pense qu&rsquo;il serait utile aussi à mes collègues. Le billet ci-dessous présente donc un exemple tout simple d&rsquo;accès au journal d&rsquo;événement Windows.</p>
<p><span id="more-48"></span></p>
<p>Vous savez sans doute que je suis un fan des langages de scripts : <a href="http://www.python.org/">Python</a> (utilisé avec succès dans certains satellites de nos applications comme un outil d&rsquo;export générique, ou des extensions de calcul spécialisées), <a href="http://www.ruby-lang.org/fr/">Ruby</a> (pour apprendre le BDD avec Cucumber), mais ces derniers sont peu pratiques quand il s&rsquo;agit d&rsquo;interagir avec Windows.</p>
<p>C&rsquo;est pourquoi je poursuis mon apprentissage de PowerShell : c&rsquo;est un langage de script moderne complètement intégré à Windows, notamment parce qu&rsquo;il accède facilement à .NET.</p>
<p>L&rsquo;exemple du jour : <font color="#0000ff">je dois souvent nettoyer le journal d&rsquo;événements Windows &laquo;&nbsp;Custom&nbsp;&raquo; </font>(créé durant l&rsquo;installation de nos logiciels pour permettre à nos applications de centraliser leurs événements).</p>
<p>Or c&rsquo;est assez fastidieux depuis l&rsquo;application Windows standard (et même avec l&rsquo;application spécialisée <a href="http://www.eventlogxp.com/">Event Log Explorer</a> que nous utilisons dans l&rsquo;équipe Support) : il faut un clic droit, puis répondre Non à la question &laquo;&nbsp;voulez-vous sauver le journal avant de l&rsquo;effacer ?&nbsp;&raquo;. Quand vous faites ca toute la journée c&rsquo;est fatiguant. et puis on finit par oublier de faire ces opérations, le journal d&rsquo;événements devient difficile à analyser, etc.</p>
<p>C&rsquo;est là que PowerShell intervient : comme .NET fournit une classe EventLog bien pratique pour interagir avec les journaux d&rsquo;événements, on peut y accéder en PowerShell :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/c8df561718fc_A427/image_3.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/c8df561718fc_A427/image_thumb_3.png" width="491" height="124" /></a> </p>
<p>J&rsquo;ai utilisé Get-Member simplement pour me persuader que j&rsquo;avais bien sous la main ce que je cherchais :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/c8df561718fc_A427/image.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/c8df561718fc_A427/image_thumb.png" width="504" height="100" /></a> </p>
<p>et donc ensuite j&rsquo;ai appelé Clear() qui m&rsquo;évite de faire l&rsquo;opération à la main.</p>
<p>En fait il y a encore plus simple que mon idée de faire appel à une classe .NET. En effet PowerShell dispose directement de commandes pour interagir avec les journaux d&rsquo;événements. Ce n&rsquo;est pas étonnant car c&rsquo;est quand même un outil d&rsquo;administration Windows.</p>
<p>Voici donc la méthode la plus directe :</p>
<p><a href="http://ftp-developpez.com/bruno-orsier/blog/images/c8df561718fc_A427/image_4.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://ftp-developpez.com/bruno-orsier/blog/images/c8df561718fc_A427/image_thumb_4.png" width="207" height="39" /></a> </p>
<p>Et c&rsquo;est donc la commande que je vais insérer au début de mes scripts de tests ! Fini les clics inutiles !</p>
<p><strong>Note</strong> : j&rsquo;ai trouvé l&rsquo;idée du Clear-EventLog grâce à cet article sur ITPro.fr : <a href="http://windowsitpro.itpro.fr/Dossiers-par-Theme/2009/7/6/050503621-Powershell,-une-ligne-de-commande-qui-a-su-se-faire-desirer.htm">Powershell, une ligne de commande qui a su se faire désirer</a> &#8211; c&rsquo;est aussi un très bon article pour démarrer avec PowerShell.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
