<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8203699536544490940</id><updated>2012-01-24T08:57:40.522-05:00</updated><category term='Vista'/><category term='Twitter'/><category term='PrimalScript'/><category term='Visual SourceSafe'/><category term='DNS'/><category term='LDIF'/><category term='Exchange'/><category term='Regular Expressions'/><category term='eMail'/><category term='Credentials'/><category term='AD Commandlets'/><category term='PSCX'/><category term='VM'/><category term='PowerShell'/><category term='about:'/><category term='WMI'/><category term='Add-Member'/><category term='Exchange 2003'/><category term='Project Euler'/><category term='Insomnia'/><category term='WSUS'/><category term='PowerGadgets'/><category term='BigInt'/><category term='COPUG'/><category term='TechED'/><category term='WPK'/><category term='Addins'/><category term='MBSA'/><category term='DNS/WINS'/><category term='MSHUG'/><category term='graphics'/><category term='XML'/><category term='F#'/><category term='Citrix'/><category term='BlackBerry'/><category term='Web Service'/><category term='Google'/><category term='Printer'/><category term='Compare-Object'/><category term='UNC Path'/><category term='ZedGraph'/><category term='Active Directory'/><category term='HIMSS'/><category term='NDS'/><category term='Proxy'/><category term='Print queue'/><category term='PrimalForms'/><category term='Memory'/><category term='WINS'/><category term='Log Parser'/><category term='BitLocker'/><category term='Excel'/><title type='text'>FatBeard's Adventures in PowerShell</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>87</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6493445656835950769</id><published>2012-01-24T08:26:00.003-05:00</published><updated>2012-01-24T08:46:57.494-05:00</updated><title type='text'>PowerShell - Let SQL sort it out</title><content type='html'>&lt;div&gt;I came across a piece of code yesterday that provided a learning opportunity. The code was a simple SQL query that returned a list of computers from a database. The code I saw, had PowerShell handling the sort after the computers were retrieved from the SQL database. While this works, it is not a best practise. In fact, it something that Don Jones has often mentioned - &lt;a href="http://technet.microsoft.com/en-us/magazine/2009.09.windowspowershell.aspx"&gt;Filter Left, Format Right.&lt;/a&gt; Look below to see the performance difference of letting SQL Server handle the sort.&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#8b0000"&gt;"Filter Left: {0} seconds"&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Measure-Command&lt;/span&gt; &lt;span style="color:#000080"&gt;-Expression&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;           &lt;br /&gt;   &lt;span style="color:#ff4500"&gt;$qry&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"select name from vcomputer where [IsManaged] ='1' order by name"&lt;/span&gt;           &lt;br /&gt;   &lt;span style="color:#ff4500"&gt;$Altiris&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Invoke-Sqlcmd&lt;/span&gt; &lt;span style="color:#000080"&gt;-ServerInstance&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;SQL01&lt;/span&gt; &lt;span style="color:#000080"&gt;-Database&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Altiris&lt;/span&gt; &lt;span style="color:#000080"&gt;-Query&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$qry&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TotalSeconds&lt;/span&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#8b0000"&gt;"Filter Right: {0} seconds"&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Measure-Command&lt;/span&gt; &lt;span style="color:#000080"&gt;-Expression&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;           &lt;br /&gt;   &lt;span style="color:#ff4500"&gt;$qry&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"select name from vcomputer where [IsManaged] ='1'"&lt;/span&gt;           &lt;br /&gt;   &lt;span style="color:#ff4500"&gt;$Altiris&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Invoke-Sqlcmd&lt;/span&gt; &lt;span style="color:#000080"&gt;-ServerInstance&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;SQL01&lt;/span&gt; &lt;span style="color:#000080"&gt;-Database&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Altiris&lt;/span&gt; &lt;span style="color:#000080"&gt;-Query&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$qry&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;sort&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TotalSeconds&lt;/span&gt;&lt;/pre&gt;&lt;a href="http://1.bp.blogspot.com/-sPRXHegpgkw/Tx60QbgnsdI/AAAAAAAAATA/tjyu08oXHNs/s1600/20120124.PNG"&gt;&lt;img style="WIDTH: 279px; HEIGHT: 39px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5701192372653109714" border="0" alt="" src="http://1.bp.blogspot.com/-sPRXHegpgkw/Tx60QbgnsdI/AAAAAAAAATA/tjyu08oXHNs/s400/20120124.PNG" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;As you can see, this is a significant difference!  &lt;br /&gt;Like Active Directory, let the server that is good at filtering or sorting handle the work for you.&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6493445656835950769?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6493445656835950769/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6493445656835950769' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6493445656835950769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6493445656835950769'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2012/01/powershell-let-sql-sort-it-out.html' title='PowerShell - Let SQL sort it out'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-sPRXHegpgkw/Tx60QbgnsdI/AAAAAAAAATA/tjyu08oXHNs/s72-c/20120124.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-221951825841299980</id><published>2012-01-23T14:06:00.004-05:00</published><updated>2012-01-23T14:09:31.532-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='LDIF'/><title type='text'>Creating an LDIF file with PowerShell</title><content type='html'>Occasionally, I am asked to create a large batch of users for our eDirectory environment.  Following is an example on how to create 500 test users (gotta love Here-Strings).&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#ff4500"&gt;$path&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"c:\temp\LDIF$(get-date -Format yyyyMMdd).txt"&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#0000ff"&gt;New-Item&lt;/span&gt; &lt;span style="color:#000080"&gt;-Path&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$path&lt;/span&gt; &lt;span style="color:#000080"&gt;-ItemType&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;File&lt;/span&gt; &lt;span style="color:#000080"&gt;-Force&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Add-Content&lt;/span&gt; &lt;span style="color:#000080"&gt;-Value&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"version: 1"&lt;/span&gt; &lt;span style="color:#000080"&gt;-Path&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$path&lt;/span&gt;          &lt;br /&gt;        &lt;br /&gt;&lt;span style="color:#800080"&gt;100&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;..&lt;/span&gt;&lt;span style="color:#800080"&gt;600&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#ff4500"&gt;$value&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;@"&lt;br /&gt;&lt;br /&gt;dn: cn=PSFTTest$_,ou=users,o=OSUMC&lt;br /&gt;changetype: add&lt;br /&gt;userPassword: P@ssw0rd&lt;br /&gt;uid: PSFTTest$_&lt;br /&gt;givenName: First$_&lt;br /&gt;fullName: First$_ Last$_&lt;br /&gt;sn: Last$_&lt;br /&gt;objectClass: inetOrgPerson&lt;br /&gt;objectClass: organizationalPerson&lt;br /&gt;objectClass: Person&lt;br /&gt;objectClass: Top&lt;br /&gt;cn: PSFTTest$_&lt;br /&gt;"@&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Add-Content&lt;/span&gt; &lt;span style="color:#000080"&gt;-Value&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$value&lt;/span&gt; &lt;span style="color:#000080"&gt;-Path&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$path&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-221951825841299980?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/221951825841299980/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=221951825841299980' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/221951825841299980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/221951825841299980'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2012/01/creating-ldif-file-with-powershell.html' title='Creating an LDIF file with PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-174849210524945801</id><published>2012-01-23T09:09:00.007-05:00</published><updated>2012-01-23T09:46:58.512-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Euler'/><title type='text'>PowerShell - Project Euler Problem 102</title><content type='html'>I am always pleased when I can use PowerShell to solve a &lt;a href="http://projecteuler.net/"&gt;Project Euler&lt;/a&gt; problem.  This one was straightforward.  You are supplied with a &lt;a href="http://projecteuler.net/project/triangles.txt"&gt;text file&lt;/a&gt; containing 1000 random triangular coordinates and you need to determine how many of the triangles contain the origin (0,0).  There are multiple ways to attack this, I went for he easier approach: if the area of the supplied triangle is equal to the 3 triangles created using the origin, then we know that the triangle contains the origin.  I used Heron's Formula to calculate the area.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Following is the code used to find the answer.&lt;/div&gt;&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#006400"&gt;&amp;lt;# Get side lengths &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 100, 0); "&gt;$LengthAB = Length of AB = SquareRoot of (Ax - Bx)^2 + (Ay - By)^2&lt;br&gt;$LengthAC = Length of AC = SquareRoot of (Ax - Cx)^2 + (Ay - Cy)^2&lt;br&gt;$LengthBC = Length of BC = SquareRoot of (Bx - Cx)^2 + (By - Cy)^2&lt;br&gt;&lt;br /&gt;$s = .5($LengthAB +$LengthAC +$LengthAC)&lt;br&gt;$Area = SQRT($s($s-$LengthAB)($s-$LengthAC)($s-$LengthBC) #&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 100, 0); "&gt;      &lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#006400"&gt;&lt;span style="color:#00008b"&gt;function&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Get-LengthOfSide&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#00008b"&gt;param&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#008080"&gt;[Array]&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$X&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#008080"&gt;[Array]&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$Y&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;     &lt;br /&gt;  &lt;br /&gt;&lt;span style="color:#00008b"&gt;return&lt;/span&gt; &lt;span style="color:#008080"&gt;[Math]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color:#000000"&gt;sqrt&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt; &lt;span style="color:#008080"&gt;[Math]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color:#000000"&gt;pow&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$X&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$Y&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#800080"&gt;2&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;+&lt;/span&gt; &lt;span style="color:#008080"&gt;[Math]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color:#000000"&gt;pow&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$X&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$Y&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#800080"&gt;2&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#00008b"&gt;function&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Get-AreaOfTriangle&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#00008b"&gt;param&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#008080"&gt;[Array]&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$X&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#008080"&gt;[Array]&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$Y&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#008080"&gt;[Array]&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$Z&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;     &lt;br /&gt;  &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$LengthAB&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Get-LengthOfSide&lt;/span&gt; &lt;span style="color:#000080"&gt;-X&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$X&lt;/span&gt; &lt;span style="color:#000080"&gt;-Y&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$Y&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$LengthAC&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Get-LengthOfSide&lt;/span&gt; &lt;span style="color:#000080"&gt;-X&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$X&lt;/span&gt; &lt;span style="color:#000080"&gt;-Y&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$Z&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$LengthBC&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Get-LengthOfSide&lt;/span&gt; &lt;span style="color:#000080"&gt;-X&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$Y&lt;/span&gt; &lt;span style="color:#000080"&gt;-Y&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$Z&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$s&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#800080"&gt;.5&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;*&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$LengthAB&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;+&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$LengthAC&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;+&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$LengthBC&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$Area&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#008080"&gt;[Math]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color:#000000"&gt;sqrt&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$s&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;*&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$s&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$LengthAB&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;*&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$s&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$LengthAC&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;*&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$s&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$LengthBC&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;)&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#00008b"&gt;return&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$Area&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff4500"&gt;$path&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;'C:\Users\stah06\Documents\triangles.txt'&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$uri&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;'http://projecteuler.net/project/triangles.txt'&lt;/span&gt;     &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400"&gt;# Using Invoke-WebRequest (PowerShell V3)&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#006400"&gt;#Invoke-WebRequest -Uri $uri -OutFile $path&lt;/span&gt;     &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400"&gt;# Using System.Net.WebClient (PowerShell V2)&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$web&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;New-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;System.Net.WebClient&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$web&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;DownloadFile&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$uri&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$path&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;     &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff4500"&gt;$match&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#800080"&gt;0&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-Content&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$path&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt;      &lt;br /&gt;&lt;span style="color:#0000ff"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$A&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;split&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000"&gt;","&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;split&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000"&gt;","&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$B&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;split&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000"&gt;","&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;2&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;split&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000"&gt;","&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;3&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$C&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;split&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000"&gt;","&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;4&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;split&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000"&gt;","&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;5&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$D&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;     &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff4500"&gt;$TriangleABC&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Get-AreaOfTriangle&lt;/span&gt; &lt;span style="color:#000080"&gt;-X&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$A&lt;/span&gt; &lt;span style="color:#000080"&gt;-Y&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$B&lt;/span&gt; &lt;span style="color:#000080"&gt;-Z&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$C&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$TriangleABD&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Get-AreaOfTriangle&lt;/span&gt; &lt;span style="color:#000080"&gt;-X&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$A&lt;/span&gt; &lt;span style="color:#000080"&gt;-Y&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$B&lt;/span&gt; &lt;span style="color:#000080"&gt;-Z&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$D&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$TriangleACD&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Get-AreaOfTriangle&lt;/span&gt; &lt;span style="color:#000080"&gt;-X&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$A&lt;/span&gt; &lt;span style="color:#000080"&gt;-Y&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$C&lt;/span&gt; &lt;span style="color:#000080"&gt;-Z&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$D&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$TriangleBCD&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Get-AreaOfTriangle&lt;/span&gt; &lt;span style="color:#000080"&gt;-X&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$B&lt;/span&gt; &lt;span style="color:#000080"&gt;-Y&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$C&lt;/span&gt; &lt;span style="color:#000080"&gt;-Z&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$D&lt;/span&gt;     &lt;br /&gt;  &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$SumofTriangles&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$TriangleABD&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;+&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$TriangleACD&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;+&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$TriangleBCD&lt;/span&gt;     &lt;br /&gt;      &lt;br /&gt;&lt;span style="color:#00008b"&gt;if&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt; &lt;span style="color:#008080"&gt;[math]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color:#000000"&gt;abs&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$TriangleABC&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$SumofTriangles&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-lt&lt;/span&gt; &lt;span style="color:#800080"&gt;.5&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;      &lt;br /&gt; &lt;span style="color:#006400"&gt;#"{0} {1}" -f $TriangleABC, $SumofTriangles&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#ff4500"&gt;$match&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;++&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff4500"&gt;$match&lt;/span&gt;      &lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-174849210524945801?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/174849210524945801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=174849210524945801' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/174849210524945801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/174849210524945801'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2012/01/powershell-project-euler-problem-102.html' title='PowerShell - Project Euler Problem 102'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-3461448706233290828</id><published>2012-01-19T15:35:00.021-05:00</published><updated>2012-01-19T18:42:17.405-05:00</updated><title type='text'>Will Rogers Phenomenon</title><content type='html'>Following is a example of the Will Rogers phenomenon. This discussion was a tangent from a water-cooler discussion of the Monty Hall problem (much more interesting).&lt;br /&gt;&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#006400;"&gt;‹#&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#006400;"&gt;The Will Rogers phenomenon occurs when the averages&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#006400;"&gt;of 2 groups are raised by moving one item from one&lt;br /&gt;to the other.Note: Data may not be truly&lt;br /&gt;representative of actual figures. #›&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400;"&gt;# Sample IQs&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$Ohio&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#800080;"&gt;110&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;105&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;115&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;120&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$StateUpNorth&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#800080;"&gt;90&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;95&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;85&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;90&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400;"&gt;# Initial State (pun intended...)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#8b0000;"&gt;"Average Ohio IQ before move is: {0}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$Ohio  &amp;#124;&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#0000ff;"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Average&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Average&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#8b0000;"&gt;"Average StateUpNorth IQ before move is: {0}`n"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$StateUpNorth &amp;#124;&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#0000ff;"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Average&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Average&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400;"&gt;# Rumoured to be in the Toledo area...&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$LowestOhioIQ&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$Ohio&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;sort&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;[&lt;/span&gt;&lt;span style="color:#800080;"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400;"&gt;# Remove from Ohio&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$Ohio&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#000000;"&gt;@(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$ohio&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;where&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-ne&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$LowestOhioIQ&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400;"&gt;# Add to State up North (Ann Arbor area)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$StateUpNorth&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;+=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$LowestOhioIQ&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#006400;"&gt;# Final State&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#8b0000;"&gt;"Average Ohio IQ after move is: {0}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$Ohio &amp;#124;&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#0000ff;"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Average&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Average&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#8b0000;"&gt;"Average StateUpNorth IQ after move is: {0}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$StateUpNorth &amp;#124;&lt;/span&gt;  &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#0000ff;"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Average&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Average&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-KyvhLvJ6lac/Tximjx1dqNI/AAAAAAAAASw/uH0gn-qFGbc/s1600/20120119.PNG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 95px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5699488462040574162" border="0" alt="" src="http://3.bp.blogspot.com/-KyvhLvJ6lac/Tximjx1dqNI/AAAAAAAAASw/uH0gn-qFGbc/s400/20120119.PNG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-3461448706233290828?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/3461448706233290828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=3461448706233290828' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3461448706233290828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3461448706233290828'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2012/01/following-is-example-of-will-rogers.html' title='Will Rogers Phenomenon'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-KyvhLvJ6lac/Tximjx1dqNI/AAAAAAAAASw/uH0gn-qFGbc/s72-c/20120119.PNG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-4286486184305022287</id><published>2012-01-18T14:52:00.005-05:00</published><updated>2012-01-18T15:02:37.821-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Active Directory'/><title type='text'>More Training Questions: Connect to different domain</title><content type='html'>At a recent internal PowerShell training session, I was asked how to connect to a different domain. Following are a couple ways to accomplish this (using &lt;a href="http://www.quest.com/powershell/activeroles-server.aspx"&gt;Quest cmdlets &lt;/a&gt;or the ActiveDirectory Module):&lt;br /&gt;&lt;br /&gt;# Quest cmdlets&lt;br /&gt;Add-PSSnapin Quest.ActiveRoles.ADManagement&lt;br /&gt;$cred = Get-Credential 'ExtDomain.Local\FatBeard'&lt;br /&gt;Connect-QADService -Service ExtDomain.Local -Cred $cred&lt;br /&gt;&lt;br /&gt;Get-QADUser&lt;br /&gt;&lt;br /&gt;# Active Directory Module&lt;br /&gt;Import-Module ActiveDirectory&lt;br /&gt;New-PSDrive –Name ExtDomain&lt;br /&gt;–PSProvider ActiveDirectory&lt;br /&gt;–Server ExtDomain.Local&lt;br /&gt;–credential (Get-Credential ‘ExtDomain.Local\FatBeard’)&lt;br /&gt;–root ‘//RootDSE/’&lt;br /&gt;&lt;br /&gt;Get-ADUser -filter *&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-4286486184305022287?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/4286486184305022287/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=4286486184305022287' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4286486184305022287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4286486184305022287'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2012/01/more-training-questions-connect-to.html' title='More Training Questions: Connect to different domain'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-8844940536015169568</id><published>2012-01-18T13:02:00.016-05:00</published><updated>2012-01-18T13:32:20.788-05:00</updated><title type='text'>Training Questions: Date and Numeric Formatting with PowerShell</title><content type='html'>At a recent internal training session, I was asked how to format dates in PowerShell. A little later I was asked how to format numbers, and later still I was asked if it was possible to right justify strings. Following is the example I used to demonstrate the formating capabilities:&lt;br /&gt;&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#0000ff;"&gt;Get-ADUser&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;SamAccountName&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Properties&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;WhenCreated &lt;/span&gt;&amp;#124; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0000ff;"&gt;Select&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;SamAccountName&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;Name&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"ShortDate"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;Expression&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:d}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"LongDate"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:D}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;L&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FullDateShortTime"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:f}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FullDateLongTime"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:F}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"GeneralDateShortTime"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:g}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"GeneralDateLongTime"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:G}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"Month"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:M MM MMM MMMM}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"Day"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;  &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:d dd ddd dddd}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"Year"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:y yy yyy yyyy}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"Hour"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:h hh H HH}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"Minute"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:m mm}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"Second"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:s ss}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"AM/PM"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:t tt}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"CustomDateTime1"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:M/d/yy h:m:s tt}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"CustomDateTime2"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:dddd, MMMM yyyy - HH:mm:ss}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;WhenCreated&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;     &lt;br /&gt;&lt;span style="color:#0000ff;"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Class&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;win32_logicalDisk&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Filter&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"DeviceID='C:'"  &lt;/span&gt;&amp;#124; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0000ff;"&gt;Select&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;DeviceID&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceDecimal"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:d}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceScientific1"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:E}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceScientific2"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:E1}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceFixed1"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:F1}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceFixed2"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:F5}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceGeneral"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:G3}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceNumber"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:N3}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpacePercent"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:P}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;/&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Size&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;br /&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FreeSpaceGB"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"{0:N0} GB"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FreeSpace&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;/&lt;/span&gt;&lt;span style="color:#800080;"&gt;1GB&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$myString&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"Yuengling"&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#8b0000;"&gt;"{0,10}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$myString&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#8b0000;"&gt;"{0,15}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$myString&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#8b0000;"&gt;"{0,20}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$myString&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Results:&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-Rh-hpTcXw0Y/TxcOuCiSQNI/AAAAAAAAASU/LRrl0-jxe9c/s1600/20120118.PNG"&gt;&lt;img style="WIDTH: 391px; HEIGHT: 400px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5699040037578096850" border="0" alt="" src="http://4.bp.blogspot.com/-Rh-hpTcXw0Y/TxcOuCiSQNI/AAAAAAAAASU/LRrl0-jxe9c/s400/20120118.PNG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-8844940536015169568?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/8844940536015169568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=8844940536015169568' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8844940536015169568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8844940536015169568'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2012/01/training-questions-date-and-numeric.html' title='Training Questions: Date and Numeric Formatting with PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-Rh-hpTcXw0Y/TxcOuCiSQNI/AAAAAAAAASU/LRrl0-jxe9c/s72-c/20120118.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-2344384674272012108</id><published>2011-09-27T15:23:00.009-04:00</published><updated>2011-09-27T15:46:04.289-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AD Commandlets'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Active Directory'/><title type='text'>PowerShell ActiveDirectory Module vs Quest.ActiveRoles.ADManagement Snapin</title><content type='html'>I have used the Quest.ActiveRoles.ADManagement snapin for a few years and have enjoyed their ease of use.  Now that we have migrated our domain controllers to 2008 R2, I often use the ActiveDirectory Module.  In fact, I end up using both and see no reason to pick one over the other.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Being of curious nature, I wanted to compare the time it took for a standard query to run using both approaches.  Following is a comparison of:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Quest.ActiveRoles.ADManagement snapin with Where-Object&lt;/li&gt;&lt;li&gt;Quest.ActiveRoles.ADManagement snapin with LDAP Filter&lt;/li&gt;&lt;li&gt;ActiveDirectory Module with Filter parameter&lt;/li&gt;&lt;li&gt;ActiveDirectory Module with LDAP Filter&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;The query is looking for "stale" servers and runs 10 times for each one and averages the result.&lt;br /&gt;&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span"&gt;&lt;span style="color:#006400"&gt;# Add required snapin and module&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Add-PSSnapin&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Quest.ActiveRoles.ADManagement&lt;/span&gt; &lt;span style="color:#000080"&gt;-ErrorAction&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;SilentlyContinue&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Import-Module&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;ActiveDirectory&lt;/span&gt; &lt;span style="color:#000080"&gt;-ErrorAction&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;SilentlyContinue&lt;/span&gt;    &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff4500"&gt;$d&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Get-Date&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;AddDays&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#800080"&gt;-90&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;ToFileTime&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$LDAP&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"(&amp;amp;(OperatingSystem=*Server*)(pwdLastSet&amp;lt;=$d)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))"&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$server&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"DC-P01"&lt;/span&gt;    &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400"&gt;# Quest.ActiveRoles.ADManagement with Where-Object&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$QAD_Where&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;..&lt;/span&gt;&lt;span style="color:#800080"&gt;10&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Measure-Command&lt;/span&gt; &lt;span style="color:#000080"&gt;-Expression&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-QADComputer&lt;/span&gt; &lt;span style="color:#000080"&gt;-Service&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;DC-P01&lt;/span&gt; &lt;span style="color:#000080"&gt;-OSName&lt;/span&gt; &lt;span style="color:#8b0000"&gt;'*Server*'&lt;/span&gt; &lt;span style="color:#000080"&gt;-PasswordNotChangedFor&lt;/span&gt; &lt;span style="color:#800080"&gt;90&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt;        &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Where-Object&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-not&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;AccountIsDisabled&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TotalSeconds&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080"&gt;-Average&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Average&lt;/span&gt;    &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400"&gt;# Quest.ActiveRoles.ADManagement with LDAP filter&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$QAD_LDAP&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;..&lt;/span&gt;&lt;span style="color:#800080"&gt;10&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Measure-Command&lt;/span&gt; &lt;span style="color:#000080"&gt;-Expression&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-QADComputer&lt;/span&gt; &lt;span style="color:#000080"&gt;-Service&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$server&lt;/span&gt; &lt;span style="color:#000080"&gt;-LDAPFilter&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$LDAP&lt;/span&gt; &lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TotalSeconds&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080"&gt;-Average&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Average&lt;/span&gt;    &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400"&gt;# Active Directory Module with Filter parameter&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$AD_Filter&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;..&lt;/span&gt;&lt;span style="color:#800080"&gt;10&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Measure-Command&lt;/span&gt; &lt;span style="color:#000080"&gt;-Expression&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-ADComputer&lt;/span&gt; &lt;span style="color:#000080"&gt;-Server&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$server&lt;/span&gt; &lt;span style="color:#000080"&gt;-Filter&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;OperatingSystem&lt;/span&gt; &lt;span style="color:#000080"&gt;-like&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"*Server*"&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-AND&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;PasswordLastSet&lt;/span&gt; &lt;span style="color:#000080"&gt;-le&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$d&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-AND&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Enabled&lt;/span&gt; &lt;span style="color:#000080"&gt;-eq&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$True&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TotalSeconds&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080"&gt;-Average&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Average&lt;/span&gt;    &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006400"&gt;# Active Directory Module with LDAP Filter&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$AD_LDAP&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;..&lt;/span&gt;&lt;span style="color:#800080"&gt;10&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Measure-Command&lt;/span&gt; &lt;span style="color:#000080"&gt;-Expression&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-ADComputer&lt;/span&gt; &lt;span style="color:#000080"&gt;-Server&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$server&lt;/span&gt; &lt;span style="color:#000080"&gt;-LDAPFilter&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$LDAP&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TotalSeconds&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Measure-Object&lt;/span&gt; &lt;span style="color:#000080"&gt;-Average&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Average&lt;/span&gt;            &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#8b0000"&gt;"Quest.ActiveRoles.ADManagement with Where-Object took {0:N2} seconds."&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$QAD_Where&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#8b0000"&gt;"Quest.ActiveRoles.ADManagement with LDAPFilter took {0:N2} seconds."&lt;/span&gt;   &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$QAD_LDAP&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#8b0000"&gt;"Active Directory Module with filter took {0:N2} seconds."&lt;/span&gt;              &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$AD_Filter&lt;/span&gt;    &lt;br /&gt;&lt;span style="color:#8b0000"&gt;"Active Directory Module with LDAPFilter took {0:N2} seconds."&lt;/span&gt;          &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$AD_LDAP&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;The results (for the most part) are not surprising.&lt;br /&gt;Quest.ActiveRoles.ADManagement with Where-Object took 4.97 seconds.&lt;br /&gt;Quest.ActiveRoles.ADManagement with LDAPFilter took 4.19 seconds.&lt;br /&gt;Active Directory Module with filter took 3.20 seconds.&lt;br /&gt;Active Directory Module with LDAPFilter took 3.21 seconds.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;At some point, I need to run this again with a long running query.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Is this consistent with your results?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-2344384674272012108?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/2344384674272012108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=2344384674272012108' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2344384674272012108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2344384674272012108'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2011/09/i-have-used-quest.html' title='PowerShell ActiveDirectory Module vs Quest.ActiveRoles.ADManagement Snapin'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-8782755750060285610</id><published>2011-08-29T13:07:00.012-04:00</published><updated>2011-08-29T14:59:45.757-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell and Benford's Law</title><content type='html'>&lt;span class="Apple-style-span"&gt;Was reading through a &lt;a href="http://www.r-bloggers.com/benfords-law-or-the-first-digit-law/"&gt;statistics blog&lt;/a&gt; (R) the other day when I read a posting on Benford's law.  The definition according to the blog is:&lt;br /&gt;&lt;br /&gt;"&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(68, 68, 68); font-family: 'Times New Roman'; font-size: 14px; line-height: 18px; background-color: rgb(255, 255, 255); "&gt;&lt;b&gt;Benford's law&lt;/b&gt;, also called the &lt;i&gt;first-digit law&lt;/i&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(68, 68, 68); font-family: 'Times New Roman'; font-size: 14px; line-height: 18px; background-color: rgb(255, 255, 255); "&gt;, states that in lists of numbers from many (but not all) real-life sources of data, the leading digit is distributed in a specific, non-uniform way. According to this law, the first digit is 1 about 30% of the time, and larger digits occur as the leading digit with lower and lower frequency, to the point where 9 as a first digit occurs less than 5% of the time."&lt;br /&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;The probabilities are distributed as demonstration here.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-ipHAcmKXAoQ/TlvenzlokLI/AAAAAAAAAQM/dgtUbFuZJqQ/s1600/bedford2.PNG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 269px;" src="http://1.bp.blogspot.com/-ipHAcmKXAoQ/TlvenzlokLI/AAAAAAAAAQM/dgtUbFuZJqQ/s400/bedford2.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5646351333283369138" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;This seemed counter-intuitive and I wanted to validate it myself. Let's look at the leading digit of all the txt files in one of my directories.   Enter PowerShell.....&lt;/span&gt;&lt;/div&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#006400"&gt;# Explore Benford's Law&lt;/span&gt; &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;@(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;br /&gt;&lt;span style="color:#00008b"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$item&lt;/span&gt; &lt;span style="color:#00008b"&gt;in&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Get-ChildItem&lt;/span&gt; &lt;span style="color:#000080"&gt;-Path&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;p:\&lt;/span&gt; &lt;span style="color:#000080"&gt;-Filter&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;*.txt&lt;/span&gt; &lt;span style="color:#000080"&gt;-Recurse&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;br /&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;  &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;+=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$item&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;length&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;toString&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt; &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Group-Object&lt;/span&gt; &lt;span style="color:#000080"&gt;-NoElement&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Sort-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;count&lt;/span&gt; &lt;span style="color:#000080"&gt;-Descending&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Format-Table&lt;/span&gt; &lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;”#”&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Name&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;  &lt;br /&gt;&lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;”Count”&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"{0:%##}"&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#000000"&gt;$(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Count&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;/&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Count&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;  &lt;br /&gt;&lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;”Histogram”&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#8b0000"&gt;“▄”&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;*&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Count&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt; &lt;span style="color:#000080"&gt;-autosize&lt;/span&gt;&lt;/pre&gt;&lt;a href="http://4.bp.blogspot.com/-aSe5-1GHE7c/TlvdNf3tpUI/AAAAAAAAAQE/furaB3_lHP0/s1600/bedford1.PNG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 222px;" src="http://4.bp.blogspot.com/-aSe5-1GHE7c/TlvdNf3tpUI/AAAAAAAAAQE/furaB3_lHP0/s400/bedford1.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5646349781802263874" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I consider this a validation, but lets try one another example, this time looking at leading digits on the workingset of the processes on my desktop:&lt;/div&gt;&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;@(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;       &lt;br /&gt;&lt;span style="color:#00008b"&gt;foreach&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$a&lt;/span&gt; &lt;span style="color:#00008b"&gt;in&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Get-Process&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;       &lt;br /&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;        &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;+=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$a&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;WorkingSet&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;toString&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;       &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;       &lt;br /&gt;  &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Group-Object&lt;/span&gt; &lt;span style="color:#000080"&gt;-NoElement&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Sort-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;count&lt;/span&gt; &lt;span style="color:#000080"&gt;-Descending&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Format-Table&lt;/span&gt; &lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;”#”&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Name&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;        &lt;br /&gt;&lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;”Count”&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"{0:%##}"&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#000000"&gt;$(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Count&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;/&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$array&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Count&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;        &lt;br /&gt;&lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;”Histogram”&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#8b0000"&gt;“▄”&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;*&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Count&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt; &lt;span style="color:#000080"&gt;-autosize&lt;/span&gt;&lt;/pre&gt;&lt;a href="http://1.bp.blogspot.com/-s5FdLLKTxp4/Tlvfm8gwoyI/AAAAAAAAAQU/4vxgHmv4Cmk/s1600/bedford3.PNG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 224px;" src="http://1.bp.blogspot.com/-s5FdLLKTxp4/Tlvfm8gwoyI/AAAAAAAAAQU/4vxgHmv4Cmk/s400/bedford3.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5646352418010604322" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Again, this seems to hold true.  Now that I have examples of Benford's law, I feel compelled to try and understand it.  Wish me luck!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-8782755750060285610?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/8782755750060285610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=8782755750060285610' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8782755750060285610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8782755750060285610'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2011/08/powershell-and-benfords-law.html' title='PowerShell and Benford&apos;s Law'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-ipHAcmKXAoQ/TlvenzlokLI/AAAAAAAAAQM/dgtUbFuZJqQ/s72-c/bedford2.PNG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-5371765641367364917</id><published>2011-08-25T16:06:00.009-04:00</published><updated>2011-08-25T16:29:36.372-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Active Directory'/><title type='text'>Setting user LogonWorkstations and LogonHours in Active Directory</title><content type='html'>&lt;div class="ExternalClassA3A7ADB37B224E678D5EF0708E05D6DE"&gt;   &lt;div class="ExternalClass48074D3B08184D40B8F8DB4A77492536 ms-rteFontSize-2 ms-rteThemeFontFace-2"&gt;     &lt;p class="ms-rteThemeForeColor-2-0"&gt;​&lt;span&gt;&lt;span&gt;If you find the need to add restrictions to a user in Active Directory, specifically LogonWorkstations and logonHours then the following script will serve as a template.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="ms-rteThemeForeColor-2-0"&gt;&lt;span&gt;A few notes:&lt;br /&gt;- We are using the ActiveDirectory module&lt;br /&gt;- We are using a set list of workstations&lt;br /&gt;- We are using a template approach for the logon hours &lt;/span&gt;&lt;/p&gt;      &lt;pre class="PowerShellColorizedScript"&gt;&lt;span&gt;&lt;span&gt;&lt;span style="color: #0000ff"&gt;Import-Module&lt;/span&gt; &lt;span style="color: #8a2be2"&gt;ActiveDirectory&lt;/span&gt; &lt;span style="color: #000080"&gt;-ErrorAction&lt;/span&gt; &lt;span style="color: #8a2be2"&gt;SilentlyContinue&lt;/span&gt;  &lt;br /&gt;&lt;br /&gt;&lt;span style="color: #006400"&gt;# Define the list of workstations we want to allow access &lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #ff4500"&gt;$WorkStations&lt;/span&gt; &lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color: #8b0000"&gt;"Workstation1,Workstation2,Workstation3"&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #ff4500"&gt;$WorkStations&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;+=&lt;/span&gt; &lt;span style="color: #8b0000"&gt;"Workstation4,Workstation5,Workstation6"&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #ff4500"&gt;$WorkStations&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;+=&lt;/span&gt; &lt;span style="color: #8b0000"&gt;"Workstation7,Workstation8,Workstation9"&lt;/span&gt;  &lt;br /&gt;&lt;br /&gt;&lt;span style="color: #006400"&gt;# Create the logonHours array&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #008080"&gt;[array]&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$logonHours&lt;/span&gt; &lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;Get-ADUser&lt;/span&gt; &lt;span style="color: #8a2be2"&gt;test010&lt;/span&gt; &lt;span style="color: #000080"&gt;-Properties&lt;/span&gt; &lt;span style="color: #8a2be2"&gt;logonHours&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;logonHours&lt;/span&gt;  &lt;br /&gt;&lt;br /&gt;&lt;span style="color: #006400"&gt;# Iterate over users and assign accordingly&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #00008b"&gt;foreach&lt;/span&gt; &lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$user&lt;/span&gt; &lt;span style="color: #00008b"&gt;in&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Get-Content&lt;/span&gt; &lt;span style="color: #8a2be2"&gt;C:\temp\users.txt&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt; &lt;span style="color: #000000"&gt;{&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: #0000ff"&gt;Get-ADUser&lt;/span&gt; &lt;span style="color: #000080"&gt;-Identity&lt;/span&gt; &lt;span style="color: #ff4500"&gt;$user&lt;/span&gt; &lt;span style="color: #a9a9a9"&gt;|&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="color: #000000"&gt;`&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: #0000ff"&gt;Set-ADUser&lt;/span&gt; &lt;span style="color: #000080"&gt;-LogonWorkstations&lt;/span&gt; &lt;span style="color: #ff4500"&gt;$Workstations&lt;/span&gt; &lt;span style="color: #000080"&gt;-Add&lt;/span&gt; &lt;span style="color: #000000"&gt;@{&lt;/span&gt;&lt;span style="color: #000000"&gt;logonhours&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$logonHours&lt;/span&gt;&lt;span style="color: #000000"&gt;}&lt;/span&gt;   &lt;br /&gt;&lt;span style="color: #000000"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;Checking our results shows that the logonHours were set exactly to what our template was.&lt;/div&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-8t0zBho7mCI/TlaveURMMaI/AAAAAAAAAP8/ngvxqkR6W6w/s1600/logon1.PNG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 247px;" src="http://2.bp.blogspot.com/-8t0zBho7mCI/TlaveURMMaI/AAAAAAAAAP8/ngvxqkR6W6w/s400/logon1.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5644892118327243170" /&gt;&lt;/a&gt;&lt;div class="ExternalClass48074D3B08184D40B8F8DB4A77492536 ms-rteFontSize-2 ms-rteThemeFontFace-2"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="ExternalClass48074D3B08184D40B8F8DB4A77492536 ms-rteFontSize-2 ms-rteThemeFontFace-2"&gt;Enjoy!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-5371765641367364917?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/5371765641367364917/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=5371765641367364917' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5371765641367364917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5371765641367364917'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2011/08/setting-user-logonworkstations-and.html' title='Setting user LogonWorkstations and LogonHours in Active Directory'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-8t0zBho7mCI/TlaveURMMaI/AAAAAAAAAP8/ngvxqkR6W6w/s72-c/logon1.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6442501331747575632</id><published>2011-06-23T14:50:00.002-04:00</published><updated>2011-06-23T14:53:03.094-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Printer'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Printer exploration with PowerShell</title><content type='html'>Following are a few printing related PowerShell one-liners that I demonstrated for a few colleagues at work.  -Enjoy!&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#006400"&gt;# List all printer drivers on a specific server&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#000080"&gt;-Class&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Win32_PrinterDriver&lt;/span&gt; &lt;span style="color:#000080"&gt;-ComputerName&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;PrintServer&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Sort-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Name&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Select-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Name&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;DriverPath&lt;/span&gt;            &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400"&gt;# List all properties of a specifc printer driver on a server&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Win32_PrinterDriver&lt;/span&gt; &lt;span style="color:#000080"&gt;-ComputerName&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;PrintServer&lt;/span&gt; &lt;span style="color:#000080"&gt;-Filter&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"Name='Lexmark Universal XL,3,Windows x64'"&lt;/span&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400"&gt;# List Printers for a specific server&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Win32_Printer&lt;/span&gt; &lt;span style="color:#000080"&gt;-ComputerName&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;PrintServer&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Sort-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Name&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Select-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Name&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;DriverName&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;PortName&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;ShareName&lt;/span&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400"&gt;# List a specific printer on a server&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Win32_Printer&lt;/span&gt; &lt;span style="color:#000080"&gt;-ComputerName&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;PrintServer&lt;/span&gt; &lt;span style="color:#000080"&gt;-Filter&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"Name='P-UHC6000M-IRC2550'"&lt;/span&gt;            &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400"&gt;# List info on print jobs&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Win32_PrintJob&lt;/span&gt; &lt;span style="color:#000080"&gt;-ComputerName&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;PrintServer&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Select-Object&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Document&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Owner&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;           &lt;br /&gt;  &lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;Label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"Status"&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;Expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;JobStatus&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;            &lt;br /&gt;  &lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;Label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"PageCount"&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;Expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TotalPages&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;            &lt;br /&gt;  &lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#000000"&gt;Label&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"DateSubmitted"&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#000000"&gt;Expression&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#000000"&gt;{&lt;/span&gt;&lt;span style="color:#008080"&gt;[System.Management.ManagementDateTimeconverter]&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color:#000000"&gt;ToDateTime&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;TimeSubmitted&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;            &lt;br /&gt;             &lt;br /&gt;&lt;span style="color:#006400"&gt;# List current number of jobs in each print queue&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#0000ff"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#000080"&gt;-Class&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Win32_PerfFormattedData_Spooler_PrintQueue&lt;/span&gt; &lt;span style="color:#000080"&gt;-Computer&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;PrintServer&lt;/span&gt; &lt;span style="color:#000080"&gt;-Filter&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"Name &amp;lt;&amp;gt; '_Total' and Jobs &amp;gt; 0"&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Sort&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Jobs&lt;/span&gt; &lt;span style="color:#000080"&gt;-Descending&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Select&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;name&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;jobs&lt;/span&gt; &lt;span style="color:#000000"&gt;`&lt;br /&gt;&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff"&gt;Format-Table&lt;/span&gt; &lt;span style="color:#000080"&gt;-AutoSize&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6442501331747575632?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6442501331747575632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6442501331747575632' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6442501331747575632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6442501331747575632'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2011/06/printer-exploration-with-powershell.html' title='Printer exploration with PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-1507166248071999641</id><published>2011-02-05T14:58:00.005-05:00</published><updated>2011-02-05T15:22:18.480-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Insomnia'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell doesn't cure insomnia</title><content type='html'>Had a bit of trouble sleeping last night, when I noticed that there was a perceptible difference in the amount of light the digital clock emanates.&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;img src="http://2.bp.blogspot.com/_GKoVmIIMvWw/TU2xMM9qJ6I/AAAAAAAAAN4/w-Z_0yLFELg/s200/time.gif" style="cursor:pointer; cursor:hand;width: 200px; height: 127px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5570303137323558818" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It got me wondering what time displays the most light.  Sure I could have manually figured it out, but isn't more exciting to write a script?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here it is:&lt;/div&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#006400"&gt;&lt;#   Define a lookup table for the &lt;/span&gt;&lt;span style="color:#006400"&gt;amount &lt;/span&gt;&lt;span style="color:#006400"&gt;of light "bars" each number displays. #&gt;&lt;/span&gt;           &lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#ff4500"&gt;$hash&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#000000"&gt;@{&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"1"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;2&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"2"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;5&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"3"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;5&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"4"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;4&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;     &lt;br /&gt;   &lt;span style="color:#8b0000"&gt;"5"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;5&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"6"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;6&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"7"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;3&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"8"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;7&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;     &lt;br /&gt;   &lt;span style="color:#8b0000"&gt;"9"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;5&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;"0"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;6&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;":"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$max&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#00008b"&gt;for&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$hour&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$hour&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-le&lt;/span&gt; &lt;span style="color:#800080"&gt;12&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$hour&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;++&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#00008b"&gt;for&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$minute&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#800080"&gt;0&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$minute&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-lt&lt;/span&gt; &lt;span style="color:#800080"&gt;60&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$minute&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;++&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#ff4500"&gt;$time&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000"&gt;"{0}:{1:0#}"&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$hour&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$minute&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#ff4500"&gt;$timeArray&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$time&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;ToCharArray&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#ff4500"&gt;$sum&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;0&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#00008b"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$char&lt;/span&gt; &lt;span style="color:#00008b"&gt;in&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$timeArray&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;     &lt;span style="color:#ff4500"&gt;$sum&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;+=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$hash&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#008080"&gt;[string]&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$char&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#00008b"&gt;if&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$sum&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-gt&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$max&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;     &lt;br /&gt;     &lt;span style="color:#ff4500"&gt;$max&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$maxTime&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$sum&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$time&lt;/span&gt;     &lt;br /&gt; &lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;     &lt;br /&gt;&lt;span style="color:#8b0000"&gt;"{0}`t{1}"&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$max&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$maxTime&lt;/span&gt;&lt;/pre&gt;Enjoy!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-1507166248071999641?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/1507166248071999641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=1507166248071999641' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/1507166248071999641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/1507166248071999641'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2011/02/powershell-doesnt-cure-insomnia.html' title='PowerShell doesn&apos;t cure insomnia'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GKoVmIIMvWw/TU2xMM9qJ6I/AAAAAAAAAN4/w-Z_0yLFELg/s72-c/time.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-3410038826396852760</id><published>2011-02-05T08:45:00.002-05:00</published><updated>2011-02-05T08:51:46.724-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Euler'/><title type='text'>Project Euler 112</title><content type='html'>A brute force attack on &lt;a href="http://projecteuler.net/index.php?section=problems&amp;amp;id=112"&gt;Project Euler #112&lt;/a&gt;.  I suspect there is a more efficient algorithm for this (not using string conversions), but this works.&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#00008b"&gt;function&lt;/span&gt; &lt;span style="color:#8a2be2"&gt;Test-Bouncy&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#00008b"&gt;param&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#008080"&gt;[int]&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$num&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#ff4500"&gt;$up&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$down&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$false&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#ff4500"&gt;$numArray&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$num&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;ToString&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;ToCharArray&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#ff4500"&gt;$length&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$numArray&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color:#000000"&gt;Length&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#00008b"&gt;for&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$i&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-lt&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$length&lt;/span&gt;&lt;span style="color:#000000"&gt;;&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;++&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#00008b"&gt;if&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$numArray&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-lt&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$numArray&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;          &lt;span style="color:#ff4500"&gt;$up&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$true&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#00008b"&gt;elseif&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$numArray&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-gt&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$numArray&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;          &lt;span style="color:#ff4500"&gt;$down&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$true&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#00008b"&gt;if&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$up&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-and&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$down&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;          &lt;span style="color:#00008b"&gt;return&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$true&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#00008b"&gt;return&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$false&lt;/span&gt;            &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;        &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$isBouncy&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$ratio&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#800080"&gt;0&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#ff4500"&gt;$x&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#800080"&gt;1&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#00008b"&gt;while&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$ratio&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-lt&lt;/span&gt; &lt;span style="color:#800080"&gt;.99&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#00008b"&gt;if&lt;/span&gt;&lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff"&gt;Test-Bouncy&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$x&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt; &lt;span style="color:#000000"&gt;{&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#ff4500"&gt;$isBouncy&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;++&lt;/span&gt;          &lt;br /&gt;      &lt;span style="color:#ff4500"&gt;$ratio&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500"&gt;$isBouncy&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;/&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$x&lt;/span&gt;                  &lt;br /&gt;  &lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#ff4500"&gt;$x&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;++&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#000000"&gt;}&lt;/span&gt;          &lt;br /&gt;        &lt;br /&gt;&lt;span style="color:#8b0000"&gt;"{0}`t{1}"&lt;/span&gt; &lt;span style="color:#a9a9a9"&gt;-f&lt;/span&gt; &lt;span style="color:#000000"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$x&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;-&lt;/span&gt;&lt;span style="color:#800080"&gt;1&lt;/span&gt;&lt;span style="color:#000000"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;,&lt;/span&gt;&lt;span style="color:#ff4500"&gt;$ratio&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; white-space: normal; font-size: 16px; "&gt;Enjoy!&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-3410038826396852760?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/3410038826396852760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=3410038826396852760' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3410038826396852760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3410038826396852760'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2011/02/project-euler-112.html' title='Project Euler 112'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-8230803889204988068</id><published>2010-10-20T14:47:00.004-04:00</published><updated>2010-10-20T17:00:56.128-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Exchange'/><title type='text'>Getting Database counts per Exchange Server via PowerShell</title><content type='html'>Was recently asked to generate a report of the total count of items per Exchange database per server.  This one-liner (broken up for readability), takes care of it.&lt;br /&gt;&lt;pre class='PowerShellColorizedScript'&gt;&lt;span style='color:#0000ff'&gt;Get-MailboxServer&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;|&lt;/span&gt; &lt;span style='color:#0000ff'&gt;Get-MailboxStatistics&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;|&lt;/span&gt; &lt;span style='color:#000000'&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style='color:#0000ff'&gt;Sort-Object&lt;/span&gt; &lt;span style='color:#8a2be2'&gt;DatabaseName&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;|&lt;/span&gt; &lt;span style='color:#000000'&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style='color:#0000ff'&gt;Select&lt;/span&gt; &lt;span style='color:#8a2be2'&gt;DatabaseName&lt;/span&gt;&lt;span style='color:#a9a9a9'&gt;,&lt;/span&gt; &lt;span style='color:#8a2be2'&gt;ItemCount&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;|&lt;/span&gt; &lt;span style='color:#000000'&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style='color:#0000ff'&gt;Group-Object&lt;/span&gt; &lt;span style='color:#000080'&gt;-Property&lt;/span&gt; &lt;span style='color:#8a2be2'&gt;DatabaseName&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;|&lt;/span&gt; &lt;span style='color:#000000'&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style='color:#0000ff'&gt;Foreach&lt;/span&gt; &lt;span style='color:#000000'&gt;{&lt;/span&gt;            &lt;br /&gt;    &lt;span style='color:#ff4500'&gt;$items&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;=&lt;/span&gt; &lt;span style='color:#000000'&gt;(&lt;/span&gt;&lt;span style='color:#ff4500'&gt;$_&lt;/span&gt;&lt;span style='color:#a9a9a9'&gt;.&lt;/span&gt;&lt;span style='color:#000000'&gt;Group&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;|&lt;/span&gt; &lt;span style='color:#0000ff'&gt;Measure-Object&lt;/span&gt; &lt;span style='color:#000080'&gt;-Property&lt;/span&gt; &lt;span style='color:#8a2be2'&gt;ItemCount&lt;/span&gt; &lt;span style='color:#000080'&gt;-sum&lt;/span&gt;&lt;span style='color:#000000'&gt;)&lt;/span&gt;&lt;span style='color:#a9a9a9'&gt;.&lt;/span&gt;&lt;span style='color:#000000'&gt;Sum&lt;/span&gt;            &lt;br /&gt;    &lt;span style='color:#8b0000'&gt;"{0}`t{1:N0}"&lt;/span&gt; &lt;span style='color:#a9a9a9'&gt;-f&lt;/span&gt; &lt;span style='color:#ff4500'&gt;$_&lt;/span&gt;&lt;span style='color:#a9a9a9'&gt;.&lt;/span&gt;&lt;span style='color:#000000'&gt;Name&lt;/span&gt;&lt;span style='color:#a9a9a9'&gt;,&lt;/span&gt;&lt;span style='color:#ff4500'&gt;$items&lt;/span&gt;             &lt;br /&gt;&lt;span style='color:#000000'&gt;}&lt;/span&gt;&lt;/pre&gt;This will generate something like the following:&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Exchange01-DB01&lt;/td&gt;&lt;td&gt;1,372,127&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Exchange01-DB02&lt;/td&gt;&lt;td&gt;1,522,356&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Exchange01-DB03&lt;/td&gt;&lt;td&gt;1,406,486&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Exchange01-DB04&lt;/td&gt;&lt;td&gt;1,345,962&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Exchange01-DB05&lt;/td&gt;&lt;td&gt;1,330,690&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Exchange01-DB06&lt;/td&gt;&lt;td&gt;1,392,853&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Exchange01-DB07&lt;/td&gt;&lt;td&gt;1,318,130&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;.....&lt;/td&gt;&lt;td&gt;.....&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-8230803889204988068?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/8230803889204988068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=8230803889204988068' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8230803889204988068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8230803889204988068'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/10/getting-database-counts-per-exchange.html' title='Getting Database counts per Exchange Server via PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6326424651123106870</id><published>2010-10-07T14:49:00.012-04:00</published><updated>2010-10-07T15:11:44.018-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Proxy'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Managing Proxy Settings with PowerShell</title><content type='html'>I find myself changing proxy settings often on my laptop between various environments (Home, Production and Test).  Generally this is no big deal. But today, I found myself switching multiple times as I was testing ISA and realized that PowerShell can easily take care of this.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;At some point, I will wrap this into a GUI but for now, here is the script.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Note: I am using Jeff Hick's &lt;a href="http://jdhitsolutions.com/blog/2010/10/test-registry-item/"&gt;Test-RegistryItem&lt;/a&gt;.Enjoy!&lt;/div&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#00008b"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;function&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Set-Proxy&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#add8e6"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;cmdletbinding&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#00008b"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Param&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#add8e6"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Parameter&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Position&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Mandatory&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$True&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;HelpMessage&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"Enter either `"Home`", `"Production`" or `"Test`"."&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#add8e6"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ValidateNotNullOrEmpty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#add8e6"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ValidateSet&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"Home"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"Production"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"Test"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#008080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;[String]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$Location&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;           &lt;br /&gt;            &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$url&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"http://autoconf.FatBeard.com/proxy.pac"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;            &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#00008b"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;switch&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$location&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"Home"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;           &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Set-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ProxyEnable&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Value&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#00008b"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Test-RegistryItem&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Property&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ProxyServer&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;              &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Remove-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ProxyServer&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#00008b"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Test-RegistryItem&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Property&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;AutoConfigURL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;              &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Remove-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;AutoConfigURL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"Production"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Set-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ProxyEnable&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Value&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Set-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;AutoConfigURL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Value&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$url&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"Test"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Set-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ProxyEnable&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Value&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Set-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ProxyServer&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Value&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;"TestProxy-vt01:8080"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#00008b"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Test-RegistryItem&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Property&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;AutoConfigURL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;              &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Remove-ItemProperty&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;$path&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;AutoConfigURL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;           &lt;br /&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;          &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000"&gt;&lt;span class="Apple-style-span" &gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6326424651123106870?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6326424651123106870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6326424651123106870' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6326424651123106870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6326424651123106870'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/10/managing-proxy-settings-with-powershell.html' title='Managing Proxy Settings with PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-2463206253769105047</id><published>2010-09-15T10:41:00.010-04:00</published><updated>2010-09-15T11:17:33.395-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell &amp; User Certificates</title><content type='html'>&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;I was recently asked if I could generate a report of user certificates.  I recalled doing this with a .NET class a while back, here is that function:&lt;br /&gt;&lt;/span&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#00008b;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;function&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Get-Certificate&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#add8e6;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;cmdletBinding&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#00008b;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;param&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#add8e6;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Parameter&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Position&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800080;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Mandatory&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;$True&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ValueFromPipeLine&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;$True&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;]&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#008080;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[String]&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;$user&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;    &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#00008b;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Begin&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;       &lt;br /&gt;  &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Add-PSSnapin&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;         &lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-Name&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Quest.ActiveRoles.ADManagement&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;         &lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-ErrorAction&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;SilentlyContinue&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;    &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#00008b;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Process&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;  &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Get-QADUser&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-Identity&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;$user&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;|&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;        &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Foreach&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;$_&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;DirectoryEntry&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;userCertificate&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;|&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;        &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Foreach&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#008080;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;[System.Security.Cryptography.X509Certificates.X509Certificate2]&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;$_&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;|&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;        &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Select&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Issuer&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Subject&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NotBefore&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;NotAfter&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;However, assuming you have the most recent version of the &lt;/span&gt;&lt;a href="http://www.quest.com/powershell/activeroles-server.aspx"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Quest Active Directory cmdlets (1.4.0)&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;, this becomes a trivial task.&lt;br /&gt;&lt;/span&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Get-QADUser&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;-Identity&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; FatBeard &lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;|&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Get-QADCertificate&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;IssuedBy                 IssuedTo   ValidFrom  ValidTo&lt;br /&gt;--------                 --------   ---------  -------&lt;br /&gt;OSUMC EnterpriseRoot CA  Fat Beard  6/3/2010   6/3/2011&lt;br /&gt;OSUMC EnterpriseRoot CA  Fat Beard  11/9/2009  11/9/2010&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Enjoy!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-2463206253769105047?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/2463206253769105047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=2463206253769105047' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2463206253769105047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2463206253769105047'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/09/powershell-user-certificates.html' title='PowerShell &amp; User Certificates'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-9112048667769770082</id><published>2010-09-01T09:04:00.010-04:00</published><updated>2010-09-01T11:10:46.997-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Where's my attribute?</title><content type='html'>&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;I am often asked why certain Active Directory attributes do not show up when using Get-QADUser (&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "&gt;&lt;a href="http://www.quest.com/powershell/activeroles-server.aspx"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;ActiveRoles Management Shell for Active Directory&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;). An example:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Get-QADUser&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-Identity&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;FatBeard&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;employeeID&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span" style=" white-space: normal;  "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;One might expect this to return the employeeID for Mr. FatBeard.  It doesn't and this is a desired behavior.  In order to maximize performance, the Quest cmdlets return a default list of attributes.  To see non-default attributes you have a few options:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span" style=" white-space: normal;  "&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style=" white-space: normal;  "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;- Use the -IncludeAllProperties parameter.  This will store ALL the attributes in the memory cache.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span" style=" white-space: normal;  "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style=" white-space: normal;  "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;- Use the -IncludedProperties parameter.  For ad-hoc reporting, when all that is needed are a few attributes, this is the recommended way.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Get-QADUser&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-Identity&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;FatBeard&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-IncludedProperties&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;employeeID&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;logonCount&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;|&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Select&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;employeeID&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;logoncount&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);  white-space: normal;  "&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;- Lastly, you can modify the default attributes that are returned.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;$attributes&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Get-QADPSSnapinSettings&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-DefaultOutputPropertiesForUserObject&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span style="color:#000080;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;$attributes&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;+=&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;'employeeID'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span style="color:#8b0000;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Set-QADPSSnapinSettings&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-DefaultOutputPropertiesForUserObject&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;$attributes&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span style="color:#ff4500;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Get-QADUser&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000080;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-Identity&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#8a2be2;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;FatBeard&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;employeeID&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#006400;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;#Success!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Modifying the Snapin settings is only good for the current session. If you want the settings to persist, you will need to add the modification to your profile.&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Enjoy!&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-9112048667769770082?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/9112048667769770082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=9112048667769770082' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/9112048667769770082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/9112048667769770082'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/09/wheres-my-attribute.html' title='Where&apos;s my attribute?'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6646872889891441662</id><published>2010-08-16T14:34:00.005-04:00</published><updated>2010-08-16T14:40:46.768-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Euler'/><title type='text'>Project Euler and PowerShell - Problem 42</title><content type='html'>Here is a PowerShell solution to &lt;a href="http://projecteuler.net/index.php?section=problems&amp;amp;id=42"&gt;Project Euler - Problem 42&lt;/a&gt;.&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#006400;"&gt;# Download the text file and create the array &lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$web&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;New-Object&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;System.Net.WebClient&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$url&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"http://projecteuler.net/project/words.txt"&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$words&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$web&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;DownloadString&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$url&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;replace&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;""""&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;""&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;split&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;","&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400;"&gt;# Generate a list of Triangular numbers&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#008080;"&gt;[int[]]&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$triNums&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#000000;"&gt;@(&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#00008b;"&gt;for&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$r&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#800080;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$r&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-lt&lt;/span&gt; &lt;span style="color:#800080;"&gt;500&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$r&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;++&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt;   &lt;span style="color:#ff4500;"&gt;$triNums&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;+=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$r&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;*&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$r&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;+&lt;/span&gt;&lt;span style="color:#800080;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;/&lt;/span&gt;&lt;span style="color:#800080;"&gt;2&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400;"&gt;# Create a hashtable for numeric lookup&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$lookup&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#800080;"&gt;1&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#800080;"&gt;65&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;..&lt;/span&gt;&lt;span style="color:#800080;"&gt;90&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Foreach&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$lookup&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;add&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#008080;"&gt;[Char]&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;++&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400;"&gt;# Get the numeric value of a word&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#00008b;"&gt;function&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;Get-WordValue&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$word&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$letters&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$word&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;ToCharArray&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$sum&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#00008b;"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$letter&lt;/span&gt; &lt;span style="color:#00008b;"&gt;in&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$letters&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt; &lt;span style="color:#ff4500;"&gt;$sum&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;+=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$lookup&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;[&lt;/span&gt;&lt;span style="color:#008080;"&gt;[char]&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$letter&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;]&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#00008b;"&gt;return&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$sum&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;span style="color:#006400;"&gt;# Count the Triangular words&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$Count&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#00008b;"&gt;foreach&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$word&lt;/span&gt; &lt;span style="color:#00008b;"&gt;in&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$words&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#00008b;"&gt;if&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$triNums&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-contains&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;Get-WordValue&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$word&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt; &lt;span style="color:#006400;"&gt;#"{0}`t{1}" -f (Get-WordValue $word), $word&lt;/span&gt;           &lt;br /&gt;       &lt;span style="color:#ff4500;"&gt;$Count&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;++&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;            &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$count&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6646872889891441662?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6646872889891441662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6646872889891441662' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6646872889891441662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6646872889891441662'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/08/project-euler-and-powershell-problem-42.html' title='Project Euler and PowerShell - Problem 42'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-772450666531338957</id><published>2010-07-26T16:10:00.004-04:00</published><updated>2010-07-26T16:33:41.466-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BitLocker'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Finding instances of BitLocker</title><content type='html'>Was responding to a forum question today about finding what workstations are running BitLocker.  Following is a script that does just that:&lt;div&gt;Found this posting very helpful for the &lt;a href="http://www.vistax64.com/powershell/38286-wmi-get-credentail-pkt_privacy.html"&gt;PacketPrivacy&lt;/a&gt;. &lt;/div&gt;&lt;div&gt;In this example I am specifically looking for computers running Windows 7.&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#ff4500;"&gt;$w&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#008080;"&gt;[wmi]&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;''&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$w&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;PSBase&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Scope&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Options&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Authentication&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;'PacketPrivacy'&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#ff4500;"&gt;$w&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;PSBase&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Scope&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Options&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Authentication&lt;/span&gt;          &lt;br /&gt;        &lt;br /&gt;&lt;span style="color:#0000ff;"&gt;Get-QADComputer&lt;/span&gt; &lt;span style="color:#000080;"&gt;-OSName&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;'Windows 7*'&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Select-Object&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;Name&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;|&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;Foreach&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;          &lt;br /&gt;  &lt;span style="color:#0000ff;"&gt;Get-WmiObject&lt;/span&gt; &lt;span style="color:#000080;"&gt;-ErrorAction&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;SilentlyContinue&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;      &lt;span style="color:#000080;"&gt;-Namespace&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;'root\cimv2\Security\MicrosoftVolumeEncryption'&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;      &lt;span style="color:#000080;"&gt;-Impersonation&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;'impersonate'&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;      &lt;span style="color:#000080;"&gt;-Authentication&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$w&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;PSBase&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Scope&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Options&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Authentication&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;      &lt;span style="color:#000080;"&gt;-Class&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;win32_EncryptableVolume&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;      &lt;span style="color:#000080;"&gt;-ComputerName&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;Name&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Select&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;__Server&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;DriveLetter&lt;/span&gt;          &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-772450666531338957?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/772450666531338957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=772450666531338957' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/772450666531338957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/772450666531338957'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/07/finding-instances-of-bitlocker.html' title='Finding instances of BitLocker'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6875389356471511792</id><published>2010-07-23T13:34:00.006-04:00</published><updated>2010-07-23T15:09:40.383-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Euler'/><title type='text'>Get-LatticePoints</title><content type='html'>I am so close to reaching the second level in &lt;a href="http://projecteuler.net/"&gt;Project Euler&lt;/a&gt; (need 50, I am at 48). Most of the problems that I have solved have been via Python, however, I am occasionally able to use PowerShell. A few of the problems ask to find lattice points within a circle.&lt;br /&gt;&lt;br /&gt;What is a lattice point? - Think of a lattice point as an intersection on a grid. So if you had a circle with radius 1, there would be 5 lattice points: (-1,0), (0,1), (0,-1), (1,0) and (0,0).&lt;br /&gt;Following is a PowerShell function that will get the number of lattice points for a given radius:&lt;br /&gt;&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#00008b;"&gt;function&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;Get-LatticePoints&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#008080;"&gt;[int]&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$radius&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;       &lt;br /&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt;       &lt;br /&gt;    &lt;span style="color:#ff4500;"&gt;$count&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt;       &lt;br /&gt;    &lt;span style="color:#ff4500;"&gt;$x&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$radius&lt;/span&gt;       &lt;br /&gt;    &lt;span style="color:#00008b;"&gt;while&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$x&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-le&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$radius&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;       &lt;br /&gt;    &lt;span style="color:#000000;"&gt;{&lt;/span&gt;       &lt;br /&gt;        &lt;span style="color:#ff4500;"&gt;$y&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$radius&lt;/span&gt;       &lt;br /&gt;        &lt;span style="color:#00008b;"&gt;While&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$y&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-le&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$radius&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;        &lt;br /&gt;        &lt;span style="color:#000000;"&gt;{&lt;/span&gt;       &lt;br /&gt;            &lt;span style="color:#00008b;"&gt;if&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$x&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;*&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$x&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;+&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$y&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;*&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$y&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-le&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$radius&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;*&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$radius&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;       &lt;br /&gt;            &lt;span style="color:#000000;"&gt;{&lt;/span&gt;       &lt;br /&gt;                &lt;span style="color:#ff4500;"&gt;$count&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;++&lt;/span&gt;       &lt;br /&gt;            &lt;span style="color:#000000;"&gt;}&lt;/span&gt;       &lt;br /&gt;            &lt;span style="color:#ff4500;"&gt;$y&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;++&lt;/span&gt;       &lt;br /&gt;        &lt;span style="color:#000000;"&gt;}&lt;/span&gt;       &lt;br /&gt;        &lt;span style="color:#ff4500;"&gt;$x&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;++&lt;/span&gt;       &lt;br /&gt;    &lt;span style="color:#000000;"&gt;}&lt;/span&gt;       &lt;br /&gt;    &lt;span style="color:#00008b;"&gt;return&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$count&lt;/span&gt;       &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;       &lt;br /&gt;       &lt;br /&gt;&lt;span style="color:#00008b;"&gt;for&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#800080;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$i&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-le&lt;/span&gt; &lt;span style="color:#800080;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;+=&lt;/span&gt;&lt;span style="color:#800080;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;       &lt;br /&gt;   &lt;span style="color:#8b0000;"&gt;"Index: {0}`tLatticePoints: {1}"&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;-f&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$i&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt; &lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;Get-LatticePoints&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$i&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;       &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;I forsee using this function in a couple of the Euler problems.&lt;/pre&gt;&lt;pre class="PowerShellColorizedScript"&gt;Enjoy!&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6875389356471511792?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6875389356471511792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6875389356471511792' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6875389356471511792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6875389356471511792'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/07/get-latticepoints.html' title='Get-LatticePoints'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6030127701478645907</id><published>2010-06-03T12:36:00.006-04:00</published><updated>2010-06-03T13:05:06.933-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AD Commandlets'/><category scheme='http://www.blogger.com/atom/ns#' term='NDS'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Query AD &amp; ND concurrently (Yep, you heard me right)</title><content type='html'>&lt;div class="ExternalClass711B96660E5145A8B40F7BD762B5352C"&gt;In our environment, we have Active Directory and Novell Directory Services. While I spend 95% of my time in AD, I do occasionally get asked to grab information from NDS. Instead of falling back on older tools, I thought I would look at querying NDS via PowerShell. After looking at a few .NET classes, I recalled that one of my handouts at a Central Ohio PowerShell Users Group meeting was &lt;a href="http://www.nsoftware.com/powershell/download.aspx"&gt;NetCmdlets&lt;/a&gt;. These cmdlets greatly extend the features of Microsoft Windows PowerShell with a broad range of network management and messaging capabilities. They also happen to include Get-LDAP. Using this cmdlet, it is fairly straightforward to query NDS. Following is and example that queries AD and NDS in one line of script (broken up for readability.&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#0000ff;"&gt;Get-QADUser&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Enabled&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Department&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;*92278*&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Sort-Object&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;samaccountname&lt;/span&gt;  &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;ForEach-Object&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;  &lt;br /&gt;    &lt;span style="color:#0000ff;"&gt;Get-LDAP&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Server&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;'Novell-Server'&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Search&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"cn=$($_.samaccountname)"&lt;/span&gt;  &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Select-Object&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Unique&lt;/span&gt; &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FullName"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FullName&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;[&lt;/span&gt;&lt;span style="color:#800080;"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;resultDN&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;Export-Csv&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Path&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;c:\temp\NDS.csv&lt;/span&gt; &lt;span style="color:#000080;"&gt;-NoTypeInformation&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;So here is what happens:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;We query for enabled users in AD that are in Department 92278.&lt;/li&gt;&lt;li&gt;We sort these users by SAMAccountName&lt;/li&gt;&lt;li&gt;We iterate over each user calling Get-LDAP with an NDS server and the SAMAccountName as a parameter&lt;/li&gt;&lt;li&gt;We then select FullName and the resultDN (there is a bit of magic going on here as we need to assist PowerShell with the formatting: -Unique gets rid of blank lines (don't ask me why they are there). FullName actually returns an array (once again, not sure why), we can easily grab what we want by using by forcing the format &lt;span style="color:#000000;"&gt;@{&lt;/span&gt;&lt;span style="color:#000000;"&gt;N&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#8b0000;"&gt;"FullName"&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#000000;"&gt;E&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt;&lt;span style="color:#ff4500;"&gt;$_&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;FullName&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;[&lt;/span&gt;&lt;span style="color:#800080;"&gt;0&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Lastly, we kickout the results to a CSV ready for use in Excel&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;The results look like this...&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;FullName&lt;/td&gt;&lt;td&gt;resultDN&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Alda, Alan&lt;/td&gt;&lt;td&gt;cn=Alda01,ou=IS,ou=OSU,ou=HOSP,ou=CAMPUS,o=OSU_MC&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Burghoff, Gary&lt;/td&gt;&lt;td&gt;cn=Burg02,ou=IS,ou=OSU,ou=HOSP,ou=CAMPUS,o=OSU_MC&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Farr, Jamie&lt;/td&gt;&lt;td&gt;cn=Farr01,ou=IS,ou=OSU,ou=HOSP,ou=CAMPUS,o=OSU_MC&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;At some point, I will look at using the System.DirectoryServices Namespace to accomplish this instead of relying on a 3rd party, but for now I can check a few immediate NDS related tasks off my list.&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6030127701478645907?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6030127701478645907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6030127701478645907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6030127701478645907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6030127701478645907'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/06/query-ad-nd-concurrently-yep-you-heard.html' title='Query AD &amp; ND concurrently (Yep, you heard me right)'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-8424561727813703436</id><published>2010-05-18T13:52:00.009-04:00</published><updated>2010-05-22T17:27:26.594-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPK'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>WPK Snippets</title><content type='html'>Here is another WPK snippet for you.  This one will demonstrate how to use &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.slider_members(v=VS.85).aspx"&gt;New-Slider&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.shapes.ellipse_members(v=VS.100).aspx"&gt;New-Ellipse&lt;/a&gt;. Assuming that you the PowerPack Modules installed, you should be able to cut and paste the following:&lt;br /&gt;&lt;pre class="PowerShellColorizedScript"&gt;&lt;span style="color:#0000ff;"&gt;Import-Module&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;WPK&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#0000ff;"&gt;New-Window&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Name&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"WPK"&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Title&lt;/span&gt; &lt;span style="color:#8b0000;"&gt;"WPK Snippets"&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Width&lt;/span&gt; &lt;span style="color:#800080;"&gt;250&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Height&lt;/span&gt; &lt;span style="color:#800080;"&gt;175&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Show&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt;   &lt;span style="color:#0000ff;"&gt;New-Grid&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Rows&lt;/span&gt; &lt;span style="color:#800080;"&gt;28&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;100&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Columns&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;200*&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt;       &lt;span style="color:#0000ff;"&gt;New-TextBox&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Name&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;txtSliderValue&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Column&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Row&lt;/span&gt; &lt;span style="color:#800080;"&gt;1&lt;/span&gt;           &lt;br /&gt;       &lt;span style="color:#ff4500;"&gt;$fill&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#008080;"&gt;[System.Windows.Media.Brushes]&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;::&lt;/span&gt;&lt;span style="color:#000000;"&gt;Blue&lt;/span&gt;           &lt;br /&gt; &lt;span style="color:#ff4500;"&gt;$stroke&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#008080;"&gt;[System.Windows.Media.Brushes]&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;::&lt;/span&gt;&lt;span style="color:#000000;"&gt;Black&lt;/span&gt;           &lt;br /&gt; &lt;span style="color:#0000ff;"&gt;New-Ellipse&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Name&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;oEllipse&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Column&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Row&lt;/span&gt; &lt;span style="color:#800080;"&gt;2&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Height&lt;/span&gt; &lt;span style="color:#800080;"&gt;100&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Width&lt;/span&gt; &lt;span style="color:#800080;"&gt;100&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;         &lt;span style="color:#000080;"&gt;-Fill&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$fill&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Stroke&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$stroke&lt;/span&gt;           &lt;br /&gt;       &lt;span style="color:#0000ff;"&gt;New-Slider&lt;/span&gt;  &lt;span style="color:#000080;"&gt;-Name&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;Slider&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Column&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Row&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Minimum&lt;/span&gt; &lt;span style="color:#800080;"&gt;0&lt;/span&gt; &lt;span style="color:#000080;"&gt;-Maximum&lt;/span&gt; &lt;span style="color:#800080;"&gt;200&lt;/span&gt; &lt;span style="color:#000000;"&gt;`&lt;br /&gt;&lt;/span&gt;         &lt;span style="color:#000080;"&gt;-IsSnapToTickEnabled&lt;/span&gt; &lt;span style="color:#000080;"&gt;-On_ValueChanged&lt;/span&gt; &lt;span style="color:#000000;"&gt;{&lt;/span&gt;           &lt;br /&gt;           &lt;span style="color:#ff4500;"&gt;$txtSliderValue&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$window&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Get-ChildControl&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;txtSliderValue&lt;/span&gt;           &lt;br /&gt;           &lt;span style="color:#ff4500;"&gt;$slider&lt;/span&gt;         &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$window&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Get-ChildControl&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;Slider&lt;/span&gt;           &lt;br /&gt;           &lt;span style="color:#ff4500;"&gt;$oEllipse&lt;/span&gt;       &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$window&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;|&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;Get-ChildControl&lt;/span&gt; &lt;span style="color:#8a2be2;"&gt;oEllipse&lt;/span&gt;           &lt;br /&gt;           &lt;span style="color:#ff4500;"&gt;$oEllipse&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;width&lt;/span&gt; &lt;span style="color:#a9a9a9;"&gt;=&lt;/span&gt; &lt;span style="color:#ff4500;"&gt;$slider&lt;/span&gt;&lt;span style="color:#a9a9a9;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;"&gt;value&lt;/span&gt;           &lt;br /&gt;       &lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;   &lt;span style="color:#000000;"&gt;}&lt;/span&gt;           &lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;/pre&gt;You should see something like the following:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GKoVmIIMvWw/S_LWD8HNk7I/AAAAAAAAAMc/9r3aBee6Ddc/s1600/slider1.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 250px; height: 175px;" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/S_LWD8HNk7I/AAAAAAAAAMc/9r3aBee6Ddc/s400/slider1.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5472671860372902834" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Moving the slider triggers the -On_ValueChanged event.&lt;br /&gt;Moving it around you should see the width of the ellipse change accordingly.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GKoVmIIMvWw/S_LWpd47HLI/AAAAAAAAAMk/j6sYvYRveeo/s1600/Slider2.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 250px; height: 175px;" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/S_LWpd47HLI/AAAAAAAAAMk/j6sYvYRveeo/s400/Slider2.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5472672505094937778" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://cid-402d45d3ec051d44.skydrive.live.com/self.aspx/Public/WPK^_Slider"&gt;Download the script.&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-8424561727813703436?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/8424561727813703436/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=8424561727813703436' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8424561727813703436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8424561727813703436'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/05/wpk-snippets_18.html' title='WPK Snippets'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_GKoVmIIMvWw/S_LWD8HNk7I/AAAAAAAAAMc/9r3aBee6Ddc/s72-c/slider1.PNG' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-5342676316296025455</id><published>2010-05-10T10:42:00.007-04:00</published><updated>2010-05-10T11:09:59.476-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPK'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>WPK Snippets</title><content type='html'>I have been experimenting with the WPK module from the &lt;a href="http://code.msdn.microsoft.com/PowerShellPack"&gt;PowerShell PowerPack&lt;/a&gt;.  This module enables you to easily write user interfaces within PowerShell.  Think PrimalForms but with less code and staying within one IDE. The hard part of writing the UI in WPK is knowing all the methods and properties associated with a particular object.  I find &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.folderbrowserdialog_members.aspx"&gt;searching MSDN&lt;/a&gt; for the members very helpful.  As I use the different objects (controls), I will share my findings.  Up first is the &lt;b&gt;New-FolderBrowserDialog&lt;/b&gt;.  These examples are ready to be cut and pasted into PowerShell ISE.&lt;pre&gt;Import-Module WPK&lt;br /&gt;New-Window -Name "WPK" -Title "WPK Snippets" -Width 400 -Height 100 -Show {&lt;br /&gt; New-Grid -Rows 28,28 -Columns 75,300* {&lt;br /&gt;     New-TextBlock -Text "Folder Path:" -Row 1 -Column 0 -Margin 3&lt;br /&gt;     New-TextBox -Name txtUserName -Width 300 -Row 1 -Column 1 -Margin 3&lt;br /&gt;     New-Button -Content "Folder" -Name btnFolder -Row 0 -Column 1 -Margin 3 -Width 300 -On_Click {&lt;br /&gt;       $obj = New-FolderBrowserDialog -RootFolder "MyComputer"&lt;br /&gt;       $obj.ShowDialog()       &lt;br /&gt;       $txtUserName = $Window | Get-ChildControl txtUserName&lt;br /&gt;       $txtUserName.Text = $obj.SelectedPath }&lt;br /&gt; } &lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;You should see something similar to the following:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GKoVmIIMvWw/S-ge2QOzVNI/AAAAAAAAAME/-PyCDdoJOn8/s1600/WPK1.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 100px;" src="http://3.bp.blogspot.com/_GKoVmIIMvWw/S-ge2QOzVNI/AAAAAAAAAME/-PyCDdoJOn8/s400/WPK1.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5469655664860288210" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Clicking on the button brings up the familiar "Browse For Folder" Dialog box.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GKoVmIIMvWw/S-gfNjOciaI/AAAAAAAAAMM/J7vo9Osid50/s1600/WPK2.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 399px; height: 400px;" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/S-gfNjOciaI/AAAAAAAAAMM/J7vo9Osid50/s400/WPK2.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5469656065096059298" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Select a folder and the path is placed in the appropriate textbox.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GKoVmIIMvWw/S-ggQ2ctpEI/AAAAAAAAAMU/2YjmSLGVCM4/s1600/WPK3.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 100px;" src="http://3.bp.blogspot.com/_GKoVmIIMvWw/S-ggQ2ctpEI/AAAAAAAAAMU/2YjmSLGVCM4/s400/WPK3.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5469657221307409474" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-5342676316296025455?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/5342676316296025455/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=5342676316296025455' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5342676316296025455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5342676316296025455'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/05/wpk-snippets.html' title='WPK Snippets'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_GKoVmIIMvWw/S-ge2QOzVNI/AAAAAAAAAME/-PyCDdoJOn8/s72-c/WPK1.PNG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-637520298749710428</id><published>2010-03-29T16:40:00.010-04:00</published><updated>2010-03-29T17:29:36.470-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Dynamic Variable Values</title><content type='html'>Once again, my good friend from Texas asked me for a little PowerShell assistance. Being an old Cold Fusion junkie, he sent me his cryptic CF code:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Disclaimer &lt;/strong&gt;(Blogger hates Angle Brackets)&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;em&gt;cfset variable1="blah"&lt;br /&gt;cfset var2="yada" &lt;/em&gt;&lt;br /&gt;&lt;br /&gt;This statement would've then returned the value of "#blahyada#"&lt;br /&gt;&lt;em&gt;cfoutput #Evaluate("#variable1#")var2# cfoutput &lt;/em&gt;&lt;br /&gt;&lt;br /&gt;It is basically a self-renaming variable based on the value of another variable - no idea if PowerShell can do that. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After my brief Cold Fusion viewing induced nausea subsided, I decided to help him. This is the sample I sent him:&lt;br /&gt;&lt;em&gt;$DallasAddress = "123 Cowboy Ave."&lt;br /&gt;$ColumbusAddress = "456 Hayes St."&lt;br /&gt;$ClevelandAddress = "910 Kosar Blvd."&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;div&gt;&lt;em&gt;$loc = "Dallas"&lt;br /&gt;# Returns "123 Cowboy Ave."&lt;br /&gt;(Get-Variable ($loc+"Address")).value &lt;/em&gt;&lt;br /&gt;&lt;br /&gt;He is now happy and has learned a little bit more PowerShell. As for me, he has added yet another 6 bottles of my favorite beverage to the till.&lt;br /&gt;Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-637520298749710428?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/637520298749710428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=637520298749710428' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/637520298749710428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/637520298749710428'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/03/dynamic-variable-values.html' title='Dynamic Variable Values'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-7228276762211037845</id><published>2010-03-11T16:24:00.004-05:00</published><updated>2010-03-11T16:38:21.280-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DNS'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Query DNS with PowerShell</title><content type='html'>&lt;div class="ExternalClassBEB323F02C2449D2BF388913CEC15C88"&gt;&lt;p&gt;Following is a script that will enable you to query DNS for duplicate records.  Be sure to change the location of the output file!&lt;/p&gt;&lt;/div&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="color:#008000;"&gt;# Using WMI, retrieve all the duplicate DNS records&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#800080;"&gt;$DNS&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;Get-WmiObject&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-ComputerName&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#800000;"&gt;DNS-Server&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;`&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;   &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Namespace&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#800000;"&gt;root\MicrosoftDNS&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;`&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;   &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Class&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;MicrosoftDNS_AType&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;`&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;   &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Filter&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"ContainerName='Your Container'"&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;|&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;`&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#5F9EA0;"&gt;Group-Object&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;OwnerName&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;|&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;Where-Object&lt;/span&gt;&lt;span style="color:#000000;"&gt; {&lt;/span&gt;&lt;span style="color:#000080;"&gt;$_&lt;/span&gt;&lt;span style="color:#000000;"&gt;.&lt;/span&gt;&lt;span style="color:#8B4513;"&gt;Count&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;-gt&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#008000;"&gt;# Create our CSV file to hold the data&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#800080;"&gt;$file&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="text-decoration:underline;color:#008000;"&gt;c:\temp\DNS.csv&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#5F9EA0;"&gt;New-Item&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-ItemType&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;file&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Path&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$file&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Force&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#5F9EA0;"&gt;Add-Content&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Path&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$file&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Value&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"Name,IPAddress"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#008000;"&gt;# Iterate of the DNS items grabbing the name and IPAddress&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0000FF;"&gt;foreach&lt;/span&gt;&lt;span style="color:#000000;"&gt; (&lt;/span&gt;&lt;span style="color:#800080;"&gt;$item&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;in&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$DNS&lt;/span&gt;&lt;span style="color:#000000;"&gt;) {&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;foreach&lt;/span&gt;&lt;span style="color:#000000;"&gt; (&lt;/span&gt;&lt;span style="color:#800080;"&gt;$IPAddresses&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;in&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$item&lt;/span&gt;&lt;span style="color:#000000;"&gt;.&lt;/span&gt;&lt;span style="color:#8B4513;"&gt;Group&lt;/span&gt;&lt;span style="color:#000000;"&gt;) {&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;        &lt;/span&gt;&lt;span style="color:#800080;"&gt;$value&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"{0},{1}"&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;-f&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$item&lt;/span&gt;&lt;span style="color:#000000;"&gt;.&lt;/span&gt;&lt;span style="color:#8B4513;"&gt;name&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;$IPAddresses&lt;/span&gt;&lt;span style="color:#000000;"&gt;.&lt;/span&gt;&lt;span style="color:#8B4513;"&gt;IPAddress&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;        &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;Add-Content&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Path&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$file&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5F9EA0;"&gt;-Value&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$value&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Results should look something like:&lt;br /&gt;&lt;table&gt;&lt;tr&gt;&lt;td align="left"&gt;Name&lt;/td&gt;&lt;td align="left"&gt;IPAddress&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="left"&gt;Server1&lt;/td&gt;&lt;td align="left"&gt;10.194.111.22&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="left"&gt;Server2&lt;/td&gt;&lt;td align="left"&gt;10.140.111.22&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td align="left"&gt;ServerA&lt;/td&gt;&lt;td align="left"&gt;10.333.19.121&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="left"&gt;ServerB&lt;/td&gt;&lt;td align="left"&gt;10.333.131.24&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-7228276762211037845?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/7228276762211037845/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=7228276762211037845' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/7228276762211037845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/7228276762211037845'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/03/query-dns-with-powershell.html' title='Query DNS with PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-4837118719705988972</id><published>2010-03-01T12:08:00.010-05:00</published><updated>2010-03-02T08:29:28.566-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Service'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Calling a Web Service with PowerShell</title><content type='html'>I often need to be notified of a certain condition when a scheduled script executes.&lt;br /&gt;With PowerShell V2, I can take advantage of our internal paging web service by using the &lt;em&gt;&lt;strong&gt;New-WebServiceProxy&lt;/strong&gt;&lt;/em&gt; cmdlet to take care of this notification.&lt;br /&gt;&lt;br /&gt;Check out the help on this cmdlet to see a full list of capabilities. &lt;em&gt;&lt;strong&gt;Help New-WebServiceProxy -Full&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Before we dive into the actual call, lets interrogate the web service to see what it can do.&lt;br /&gt;&lt;span style="color:#008000;"&gt;# Create a proxy for the Paging web service&lt;/span&gt;&lt;br /&gt;&lt;em&gt;$page = New-WebServiceProxy -Uri 'http://InternalPagingService/pageservice.asmx'&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#008000;"&gt;#List the methods&lt;/span&gt;&lt;br /&gt;&lt;em&gt;$page Get-Member -MemberType Method&lt;br /&gt;&lt;/em&gt;&lt;br /&gt;You should see something like this:&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_GKoVmIIMvWw/S4v4K9r9VGI/AAAAAAAAAL8/n8R67cAyijo/s1600-h/paging1.PNG"&gt;&lt;img style="WIDTH: 336px; HEIGHT: 400px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5443717441848693858" border="0" alt="" src="http://2.bp.blogspot.com/_GKoVmIIMvWw/S4v4K9r9VGI/AAAAAAAAAL8/n8R67cAyijo/s400/paging1.PNG" /&gt;&lt;/a&gt;&lt;br /&gt;The method we are going to use is RequestSinglePage.&lt;br /&gt;&lt;br /&gt;Enter the following to see the expected parameters:&lt;br /&gt;&lt;em&gt;($page Get-Member -Name RequestSinglePage).definition&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Looking at the end of the definition we see 2 parameters:&lt;br /&gt;&lt;em&gt;- string PagerId&lt;/em&gt;&lt;br /&gt;&lt;em&gt;- string NumericOrAlphaMessage&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;We now have all we need to page from script!&lt;br /&gt;&lt;em&gt;$page.RequestSinglePage('3141','Testing Page Web Service from PowerShell')&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;If you need confirmation of the Web Service call, you can look at the FunctionStatus property of the executed Web Service.&lt;br /&gt;&lt;em&gt;($page.RequestSinglePage('3141','Test Page from PowerShell')).FunctionStatus&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;This returns - &lt;strong&gt;SUCCESS&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Wrapping this web service call around some return code if fairly straight forward and is left as an exercise for the reader.&lt;br /&gt;&lt;br /&gt;If you don't have an internal Web Service handy, try out &lt;a href="http://www.webservicex.net/WeatherForecast.asmx"&gt;http://www.webservicex.net/WeatherForecast.asmx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-4837118719705988972?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/4837118719705988972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=4837118719705988972' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4837118719705988972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4837118719705988972'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2010/03/calling-web-service-with-powershell.html' title='Calling a Web Service with PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GKoVmIIMvWw/S4v4K9r9VGI/AAAAAAAAAL8/n8R67cAyijo/s72-c/paging1.PNG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-3148567736277764476</id><published>2009-10-29T13:43:00.010-04:00</published><updated>2009-10-29T13:48:51.367-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='F#'/><category scheme='http://www.blogger.com/atom/ns#' term='BigInt'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Using F# BigInt in PowerShell</title><content type='html'>Occasionally I have the need to utilize large precise numbers within PowerShell. Unfortunately, the native data types that we can use are limited in their precision.&lt;ul&gt;&lt;li&gt;&lt;div class="itemBody"&gt;Float: 7 digits&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="itemBody"&gt;Double: 16 digits&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="itemBody"&gt;Decimal: 29 digits&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I have been researching &lt;a href="http://msdn.microsoft.com/en-us/fsharp/default.aspx" target="_blank"&gt;F#&lt;/a&gt; and came across a data type called BigInt. I now knew that I could go back to PowerShell and take advantage of this type. &lt;/p&gt;&lt;p&gt;The process to do so is straight forward:&lt;br /&gt;First add a reference to the FSharp.Core assembly&lt;/p&gt;&lt;p&gt;&lt;span style="color:#5f9ea0;"&gt;Add-Type&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#5f9ea0;"&gt;-Path&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="TEXT-DECORATION: underline;color:#008000;" &gt;C:\Program Files (x86)\FSharp-1.9.6.16\bin\fSharp.Core.dll&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt; &lt;/p&gt;&lt;p&gt;Now you do things like:&lt;br /&gt;&lt;span style="color:#000000;"&gt;PS C:&amp;gt; [&lt;/span&gt;&lt;span style="color:#8b4513;"&gt;Microsoft.FSharp.Math.BigInt&lt;/span&gt;&lt;span style="color:#000000;"&gt;]&lt;/span&gt;&lt;span style="color:#000000;"&gt;::&lt;/span&gt;&lt;span style="color:#8b4513;"&gt;Pow&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;"&gt;17&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#000000;"&gt;71&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;/span&gt;&lt;span style="color:#000000;"&gt;.&lt;/span&gt;&lt;span style="color:#8b4513;"&gt;toString&lt;/span&gt;&lt;span style="color:#000000;"&gt;()&lt;/span&gt;&lt;br /&gt;PS C:&amp;gt;2300771122759378216336589429524308&lt;br /&gt;0278517973481542540644504860767306&lt;br /&gt;72752491528319986033&lt;/p&gt;&lt;p&gt;So if you are a fan of &lt;a title="http://projecteuler.net/" href="http://projecteuler.net/"&gt;http://projecteuler.net/&lt;/a&gt; you now have another tool you can utilize.&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-3148567736277764476?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/3148567736277764476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=3148567736277764476' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3148567736277764476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3148567736277764476'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/10/using-f-bigint-in-powershell.html' title='Using F# BigInt in PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-2636649265953676390</id><published>2009-10-02T07:26:00.007-04:00</published><updated>2009-10-02T08:20:24.105-04:00</updated><title type='text'>Defining Object Formatting or "How to always show Military time"</title><content type='html'>A former colleague of mine at the OSU Medical Center recently asked a PowerShell related question.  &lt;div&gt;&lt;br /&gt;&lt;div&gt;Wait - Stop - Let's start over.  I must digress a moment, please be patient as I give this former colleague of mine an appropriate introduction.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This Buckeye transplant to the state of Texas is much more then a former workmate, his legacy persists in innumerable ways.  I won't take your time listing many of them, but I do have to share at least one.  Notice the name of my blog? It isn't named after a &lt;a href="http://www.southparkstudios.com/episodes/220764"&gt;South Park character&lt;/a&gt;, nor is it named after some pirate fetish. No this transplanted Buckeye is the source of FatBeard.  He has a peculiar ability to derive nicknames that persist way beyond any code or script he has ever written.  I fell prey to his moniker making over 3 years ago.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;OK - now that you know how FatBeard came to be, lets move on with the PowerShell related post.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Texas asked me the following:&lt;/div&gt;&lt;div&gt;When I type Get-ChildItem (dir, ls) and get a file listing I want to see the LastWriteTime in Military format.  Easy enough! I sent him this:&lt;/div&gt;&lt;div&gt;&lt;p class="MsoPlainText"&gt;Get-ChildItem | select @{Name="LWT";Expression={"{0:d} {0:HH}:{0:mm}" -f ($_.LastWriteTime)}}&lt;/p&gt;&lt;p class="MsoPlainText"&gt;His response went something like this (paraphrased for the children in the audience) . "You obtuse gluteus maximus, why would I want to type that each and every time I need a directory listing."  Admittedly, he had a point.&lt;/p&gt;&lt;p class="MsoPlainText"&gt;Thus begins my first foray into extending types.  Using this as my guide (&lt;a href="http://msdn.microsoft.com/en-us/library/ms714665(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms714665(VS.85).aspx&lt;/a&gt;), I was able to quickly accomplish the task.&lt;/p&gt;&lt;p class="MsoPlainText"&gt;My steps were as follows:&lt;br /&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Navigate to C:\Windows\System32\WindowsPowerShell\v1.0 and make a copy of FileSystem.format.ps1xml&lt;/li&gt;&lt;li&gt;Rename the copied file (CustomFileSystem.format.ps1xml)&lt;/li&gt;&lt;li&gt;Open the renamed file and look for the &lt;viewdefinitions&gt; tag.&lt;/viewdefinitions&gt;&lt;/li&gt;&lt;li&gt;You should find something like this -&lt;br /&gt;&lt;scriptblock&gt;[String]::Format("{0,10}  {1,8}", $_.LastWriteTime.ToString("d"), $_.LastWriteTime.ToString("t"))&lt;br /&gt;&lt;/scriptblock&gt;&lt;/li&gt;&lt;li&gt;As you can see, this handles the LastWriteTime formating for FileSystem related information. All we need to do is change it to meet our need. This should do -&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;scriptblock&gt;[String]::Format("{0,10}  {1,2}:{2,2}:{3,2}", $_.LastWriteTime.ToString("d"),&lt;br /&gt; $_.LastWriteTime.ToString("HH"), $_.LastWriteTime.ToString("mm"),&lt;br /&gt; $_.LastWriteTime.ToString("ss"))&lt;br /&gt;&lt;/scriptblock&gt;&lt;/li&gt;&lt;li&gt;Save the file.&lt;/li&gt;&lt;li&gt;We now need to load the new formatting.  Easy enough!&lt;br /&gt;Update-FormatData -prependPath 'C:\WINDOWS\system32\windowspowershell\v1.0\ CustomFileSystem.format.ps1xml'&lt;/li&gt;&lt;li&gt;Verify your custom formatting by typing a few Get-ChildItem commands.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;Now that wasn't to hard was it!  Well Texas is happy now and you know how to modify object formatting (and how FatBeard came to be).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-2636649265953676390?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/2636649265953676390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=2636649265953676390' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2636649265953676390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2636649265953676390'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/10/defining-object-formatting-or-how-to.html' title='Defining Object Formatting or &quot;How to always show Military time&quot;'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-4579381497223816192</id><published>2009-08-25T14:12:00.007-04:00</published><updated>2009-08-25T14:54:20.393-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ZedGraph'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell and ZedGraph – Example 3</title><content type='html'>Welcome to part three in our PowerShell/ZedGraph series.  Make sure you take a look at &lt;a href="http://fatbeards.blogspot.com/2009/08/powershell-and-zedgraph-example-1.html"&gt;Part 1&lt;/a&gt; &amp;amp; &lt;a href="http://fatbeards.blogspot.com/2009/08/powershell-and-zedgraph-example-2.html"&gt;Part 2&lt;/a&gt; before you continue on.  Before we jump into more advanced features, I thought I would demonstrate how to populate the chart with real data.  Apparently some were not impressed by the Yuengling consumption example (a fictitious one at that!).&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We will use the ever diligent Get-Process cmdlet for our "real" data.  The end result will look something like this:&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_GKoVmIIMvWw/SpQq6hdXQPI/AAAAAAAAAKg/Un_uLiMJjEs/s1600-h/ZedGraph3.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 304px;" src="http://4.bp.blogspot.com/_GKoVmIIMvWw/SpQq6hdXQPI/AAAAAAAAAKg/Un_uLiMJjEs/s400/ZedGraph3.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5373967440262152434" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pretty no?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The code:&lt;/div&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%"&gt;&lt;code&gt;#Load the zedgraph dll&lt;br /&gt;$ZedGraphDll = "C:\zedgraph_dll_v5.1.5\ZedGraph.dll"&lt;br /&gt;[System.Reflection.Assembly]::LoadFrom($ZedGraphDll) | out-null&lt;br /&gt;&lt;br /&gt;# Create a WinForm to serve as a container&lt;br /&gt;$global:form = new-object Windows.Forms.form&lt;br /&gt;$form.Size = new-object System.Drawing.Size @(500,400)&lt;br /&gt;&lt;br /&gt;# Create a ZedGraphControl&lt;br /&gt;$zgc = new-object -typename ZedGraph.ZedGraphControl&lt;br /&gt;$zgc.GraphPane.Title.Text = "Processes"&lt;br /&gt;$zgc.GraphPane.XAxis.Title.Text = "Process"&lt;br /&gt;$zgc.GraphPane.YAxis.Title.Text = "WS(MB)"&lt;br /&gt;&lt;br /&gt;# Go fetch me some processes data&lt;br /&gt;$WS = @{Name='WS';Expression={"{0:#}" -f ($_.WorkingSet/1KB)}}&lt;br /&gt;$processes = Get-Process | where {$_.WorkingSet -gt 30MB} | Sort Name | select $WS, Name&lt;br /&gt;&lt;br /&gt;$a = $b = @()&lt;br /&gt;foreach($Process in $Processes)&lt;br /&gt;{&lt;br /&gt; $a+= $Process.WS&lt;br /&gt; $b+= $Process.Name&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$curve = $zgc.GraphPane.AddBar("Test",$null,$a,[System.Drawing.Color]::Red)&lt;br /&gt;$zgc.GraphPane.XAxis.Type = 'Text'&lt;br /&gt;$zgc.GraphPane.XAxis.Scale.FontSpec.Angle = 65&lt;br /&gt;$zgc.GraphPane.XAxis.Scale.MajorStep = 1&lt;br /&gt;$zgc.GraphPane.X2Axis.Scale.FontSpec.Size = 8&lt;br /&gt;$zgc.GraphPane.XAxis.Scale.TextLabels = $b&lt;br /&gt;&lt;br /&gt;# Hide the legend&lt;br /&gt;$zgc.GraphPane.Legend.IsVisible = $False&lt;br /&gt;&lt;br /&gt;# Make me pretty...&lt;br /&gt;$zgc.GraphPane.Fill = New-Object ZedGraph.Fill([System.Drawing.Color]::WhiteSmoke,[System.Drawing.Color]::Lavender,0)&lt;br /&gt;$zgc.GraphPane.Chart.Fill =  New-Object ZedGraph.Fill([System.Drawing.Color]::FromArgb(255,255,245), [System.Drawing.Color]::FromArgb(255,255,190),90)&lt;br /&gt;&lt;br /&gt;# Calculate the Axis Scale Ranges&lt;br /&gt;$zgc.AxisChange()&lt;br /&gt;&lt;br /&gt;# Add our graph to the form&lt;br /&gt;$Form.Controls.Add($zgc)&lt;br /&gt;$zgc.dock = [System.Windows.Forms.DockStyle]::Fill&lt;br /&gt;&lt;br /&gt;# Show the form&lt;br /&gt;$Form.Add_Shown({$form.Activate()})&lt;br /&gt;[void]$form.showdialog()&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;The only difference in this example is we create and populate a couple arrays (forgive my naming conventions)  and use them as our data points. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I hope I have answered some of the questions about "real" data utilization with ZedGraph.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-4579381497223816192?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/4579381497223816192/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=4579381497223816192' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4579381497223816192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4579381497223816192'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/08/powershell-and-zedgraph-example-3.html' title='PowerShell and ZedGraph – Example 3'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GKoVmIIMvWw/SpQq6hdXQPI/AAAAAAAAAKg/Un_uLiMJjEs/s72-c/ZedGraph3.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-5193819914324320105</id><published>2009-08-24T09:20:00.005-04:00</published><updated>2009-08-24T10:25:00.578-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ZedGraph'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell and ZedGraph – Example 2</title><content type='html'>&lt;div&gt;If you haven't already, take a look at &lt;a href="http://fatbeards.blogspot.com/2009/08/powershell-and-zedgraph-example-1.html"&gt;Example 1&lt;/a&gt; before you move forward!&lt;/div&gt;Let's continuing with our charting example.  At this point we have created a simple bar chart. Let's make a couple of modifications.  &lt;div&gt;The first thing we will do is to remove the legend.  &lt;/div&gt;&lt;div&gt;All we need to do is set the Legend.IsVisible property: &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;$zgc.GraphPane.Legend.IsVisible = $False&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Next, let's apply some color. We will set the pane background and the Axis background with a gradient:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;$zgc.GraphPane.Fill = New-Object ZedGraph.Fill([System.Drawing.Color]::WhiteSmoke,[System.Drawing.Color]::Lavender,0)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;$zgc.GraphPane.Chart.Fill =  New-Object ZedGraph.Fill([System.Drawing.Color]::FromArgb(255,255,245), [System.Drawing.Color]::FromArgb(255,255,190),90)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Lastly, lets add some text to the graph:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;$text = New-Object ZedGraph.TextObj("Supply`nDepleted",5,30)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;$zgc.GraphPane.GraphObjList.Add($text)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;$arrow = New-Object ZedGraph.ArrowObj([System.Drawing.Color]::Black,10,5,26,5,15)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;$zgc.GraphPane.GraphObjList.Add($arrow)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So our end result should look something like this:&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_GKoVmIIMvWw/SpKhfFHVjVI/AAAAAAAAAKY/5p0bpY5t3R4/s1600-h/ZedGraph2.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 297px;" src="http://2.bp.blogspot.com/_GKoVmIIMvWw/SpKhfFHVjVI/AAAAAAAAAKY/5p0bpY5t3R4/s400/ZedGraph2.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5373534860727389522" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;The code...&lt;br /&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%"&gt;&lt;code&gt;#Load the zedgraph dll&lt;br /&gt;$ZedGraphDll = "C:\zedgraph_dll_v5.1.5\ZedGraph.dll"&lt;br /&gt;[System.Reflection.Assembly]::LoadFrom($ZedGraphDll) | out-null&lt;br /&gt;&lt;br /&gt;# Create a WinForm to serve as a container&lt;br /&gt;$global:form = new-object Windows.Forms.form&lt;br /&gt;$form.Size = new-object System.Drawing.Size @(500,400)&lt;br /&gt;&lt;br /&gt;# Create a ZedGraphControl&lt;br /&gt;$zgc = new-object -typename ZedGraph.ZedGraphControl&lt;br /&gt;$zgc.GraphPane.Title.Text = "Yuengling Consumption"&lt;br /&gt;$zgc.GraphPane.XAxis.Title.Text = "Month"&lt;br /&gt;$zgc.GraphPane.YAxis.Title.Text = "Bottles"&lt;br /&gt;&lt;br /&gt;$xLabels = "April", "May", "June","July", "August"&lt;br /&gt;$yLabels = 60, 60, 75, 70, 15&lt;br /&gt;&lt;br /&gt;$zgc.GraphPane.AddBar("Ying",$null,$yLabels,[System.Drawing.Color]::Red)&lt;br /&gt;$zgc.GraphPane.XAxis.Type = 'Text'&lt;br /&gt;$zgc.GraphPane.XAxis.Scale.TextLabels = $xLabels&lt;br /&gt;&lt;br /&gt;# Hide the legend&lt;br /&gt;$zgc.GraphPane.Legend.IsVisible = $False&lt;br /&gt;&lt;br /&gt;# Fill the pane background with a gradient&lt;br /&gt;$zgc.GraphPane.Fill = New-Object ZedGraph.Fill([System.Drawing.Color]::WhiteSmoke,[System.Drawing.Color]::Lavender,0)&lt;br /&gt;&lt;br /&gt;# Fill the Axis Background with a gradient&lt;br /&gt;$zgc.GraphPane.Chart.Fill =  New-Object ZedGraph.Fill([System.Drawing.Color]::FromArgb(255,255,245), [System.Drawing.Color]::FromArgb(255,255,190),90)&lt;br /&gt;&lt;br /&gt;# Add text item to decorate the graph&lt;br /&gt;$text = New-Object ZedGraph.TextObj("Supply`nDepleted",5,30)&lt;br /&gt;$zgc.GraphPane.GraphObjList.Add($text)&lt;br /&gt;&lt;br /&gt;# Add an arrow pointer for the above text line&lt;br /&gt;$arrow = New-Object ZedGraph.ArrowObj([System.Drawing.Color]::Black,10,5,26,5,15)&lt;br /&gt;$zgc.GraphPane.GraphObjList.Add($arrow)&lt;br /&gt;&lt;br /&gt;# Calculate the Axis Scale Ranges&lt;br /&gt;$zgc.AxisChange()&lt;br /&gt;&lt;br /&gt;# Add our graph to the form&lt;br /&gt;$Form.Controls.Add($zgc)&lt;br /&gt;$zgc.dock = [System.Windows.Forms.DockStyle]::Fill&lt;br /&gt;&lt;br /&gt;# Show the form&lt;br /&gt;$Form.Add_Shown({$form.Activate()}) &lt;br /&gt;[void]$form.showdialog()&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;Till next time - Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-5193819914324320105?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/5193819914324320105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=5193819914324320105' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5193819914324320105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5193819914324320105'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/08/powershell-and-zedgraph-example-2.html' title='PowerShell and ZedGraph – Example 2'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GKoVmIIMvWw/SpKhfFHVjVI/AAAAAAAAAKY/5p0bpY5t3R4/s72-c/ZedGraph2.PNG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6371328809017603684</id><published>2009-08-23T21:05:00.006-04:00</published><updated>2009-08-23T21:23:26.674-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ZedGraph'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell and ZedGraph – Example 1</title><content type='html'>&lt;p&gt;Was searching for a PowerShell Mathematics library when I stumbled upon a cool .NET drawing library that can be easily consumed in PowerShell –&lt;a href="http://zedgraph.org/wiki/index.php?title=Main_Page" target="_blank"&gt;ZedGraph&lt;/a&gt;. This is a fairly robust library that will enable you to graph multiple types of charts, including overlays.  I plan on writing a series of posts that will demonstrate these capabilities.&lt;/p&gt;  &lt;p&gt;Lets get started!&lt;/p&gt;  &lt;p&gt;For the first chart, we are going to keep it simple. We will create a standard Bar chart with some fictitious data. The end result will look something like this.&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_GKoVmIIMvWw/SpHoSnBmMuI/AAAAAAAAAKQ/h28lNAoqQRo/s1600-h/ZedGraph1.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 301px;" src="http://4.bp.blogspot.com/_GKoVmIIMvWw/SpHoSnBmMuI/AAAAAAAAAKQ/h28lNAoqQRo/s400/ZedGraph1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5373331236840682210" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Now to the code:&lt;/p&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%"&gt;&lt;code&gt;# Load the ZedGraph dll   &lt;br /&gt;$ZedGraphDll = "C:\zedgraph_dll_v515\zedgraph_dll_v5.1.5\ZedGraph.dll"&lt;br /&gt;[System.Reflection.Assembly]::LoadFrom($ZedGraphDll) | out-null&lt;br /&gt;&lt;br /&gt;# Create a WinForm to serve as a container&lt;br /&gt;$global:form = new-object Windows.Forms.form &lt;br /&gt;$form.Size = new-object System.Drawing.Size @(500,400)&lt;br /&gt;&lt;br /&gt;# Create a ZedGraphControl&lt;br /&gt;$zgc = new-object -typename ZedGraph.ZedGraphControl&lt;br /&gt;$zgc.GraphPane.Title.Text = "Yuengling Consumption"&lt;br /&gt;$zgc.GraphPane.XAxis.Title.Text = "Month"&lt;br /&gt;$zgc.GraphPane.YAxis.Title.Text = "Bottles"&lt;br /&gt;&lt;br /&gt;$xLabels = "April", "May", "June","July", "August"&lt;br /&gt;$yLabels = 60, 60, 75, 70, 15&lt;br /&gt;&lt;br /&gt;$zgc.GraphPane.AddBar("Ying",$null,$yLabels,[System.Drawing.Color]::Red)&lt;br /&gt;$zgc.GraphPane.XAxis.Type = 'Text'&lt;br /&gt;$zgc.GraphPane.XAxis.Scale.TextLabels = $xLabels&lt;br /&gt;&lt;br /&gt;# Calculate the Axis Scale Ranges&lt;br /&gt;$zgc.AxisChange()&lt;br /&gt;&lt;br /&gt;# Add our graph to the form&lt;br /&gt;$Form.Controls.Add($zgc)&lt;br /&gt;$zgc.dock = [System.Windows.Forms.DockStyle]::Fill&lt;br /&gt;&lt;br /&gt;# Show the form&lt;br /&gt;$Form.Add_Shown({$form.Activate()})  &lt;br /&gt;[void]$form.showdialog()&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;As you can see, it is fairly simple to get a standard graph output.  The &lt;a href="http://zedgraph.sourceforge.net/documentation/default.html"&gt;class documentation&lt;/a&gt; on the ZedGraph site was very helpfull.  Make sure you spend some time looking over it as you start to explore this dll.  I will continue to build on this example over the next few days. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6371328809017603684?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6371328809017603684/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6371328809017603684' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6371328809017603684'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6371328809017603684'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/08/powershell-and-zedgraph-example-1.html' title='PowerShell and ZedGraph – Example 1'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GKoVmIIMvWw/SpHoSnBmMuI/AAAAAAAAAKQ/h28lNAoqQRo/s72-c/ZedGraph1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-3195330543289430357</id><published>2009-08-12T10:43:00.003-04:00</published><updated>2009-08-12T10:44:41.979-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>2009 Summer Scripting Games – Beginner Event 3</title><content type='html'>&lt;p&gt;What a pleasant surprise! Came into work this morning and saw that &lt;a href="http://twitter.com/makovec" target="_blank"&gt;@makovec&lt;/a&gt; sent me a note indicating that this mornings Scripting Guys Blog referenced one of my submissions posted during the &lt;a href="http://blogs.technet.com/heyscriptingguy/archive/2009/06/14/everything-scripting-games-come-here-if-you-are-lost.aspx" target="_blank"&gt;2009 Summer Scripting Games!&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The posting sited the use of the “undocumented” parameter –delimiter.&lt;/p&gt;  &lt;p&gt;Their post is &lt;a href="http://blogs.technet.com/heyscriptingguy/archive/2009/08/12/hey-scripting-guy-why-was-beginner-event-3-in-the-summer-scripting-games-so-hard.aspx" target="_blank"&gt;here&lt;/a&gt;.  &lt;/p&gt;  &lt;p&gt;It isn’t very often that Stahler and elegant are used in the same sentence…&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-3195330543289430357?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/3195330543289430357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=3195330543289430357' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3195330543289430357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3195330543289430357'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/08/2009-summer-scripting-games-beginner.html' title='2009 Summer Scripting Games – Beginner Event 3'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-9004821854500382102</id><published>2009-08-05T12:40:00.004-04:00</published><updated>2009-08-05T12:54:01.610-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Removing Header/Footer lines from CSV files</title><content type='html'>I was recently tasked with scheduling a script to read in a TSM.out file and create a usable CSV file from it.  The TSM *.out file has at least 9 header lines that are not relevant to the end file as well as some extra footer lines. I also noticed that the column headers are not descriptive either. So, to automate the file transformation, we look to PowerShell!&lt;br /&gt;&lt;pre&gt;function Create-CSV {&lt;br /&gt;  param(  [&lt;span style="color:Blue;"&gt;int&lt;/span&gt;]$HeaderLines,&lt;br /&gt;          [&lt;span style="color:Blue;"&gt;int&lt;/span&gt;]$FooterLines,&lt;br /&gt;          [&lt;span style="color:Blue;"&gt;string&lt;/span&gt;]$SourceFilePath,&lt;br /&gt;          [&lt;span style="color:Blue;"&gt;string&lt;/span&gt;]$DestinationFilePath,&lt;br /&gt;          [&lt;span style="color:Blue;"&gt;string&lt;/span&gt;]$NewColumnNames    )  &lt;br /&gt;&lt;br /&gt;  &lt;span style="color:Blue;"&gt;if&lt;/span&gt;(Test-Path -literalPath $SourceFilePath) {&lt;br /&gt;      $a = Get-Content -path $SourceFilePath&lt;br /&gt;      &lt;span style="color:Blue;"&gt;if&lt;/span&gt; ($NewColumnNames -ne $&lt;span style="color:Blue;"&gt;null&lt;/span&gt;) {&lt;br /&gt;          Add-Content -path $DestinationFilePath `&lt;br /&gt;                      -value $NewColumnNames&lt;br /&gt;      }&lt;br /&gt;      &lt;span style="color: rgb(0, 153, 0);"&gt;# Grab only the lines we need &lt;/span&gt;&lt;br /&gt;      $a[$HeaderLines..($a.count - $FooterLines)] | `&lt;br /&gt;      &lt;span style="color:Blue;"&gt;foreach&lt;/span&gt;{Add-Content -path $DestinationFilePath -value $_}&lt;br /&gt;  }&lt;br /&gt;  &lt;span style="color:Blue;"&gt;else&lt;/span&gt; {&lt;br /&gt;      Write-Error &lt;span style="color:Maroon;"&gt;"$SourceFilePath does not exist."&lt;/span&gt;&lt;br /&gt;  }&lt;br /&gt;} &lt;span style="color: rgb(0, 153, 0);"&gt;# End of function&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;&lt;/span&gt;Create-CSV -HeaderLines &lt;span style="color:Maroon;"&gt;9&lt;/span&gt; `&lt;br /&gt;          -FooterLines &lt;span style="color:Maroon;"&gt;4&lt;/span&gt; `&lt;br /&gt;          -SourceFilePath 'c:\temp\test.&lt;span style="color:Blue;"&gt;out&lt;/span&gt;' `&lt;br /&gt;          -DestinationFilePath 'c:\temp\test.csv' `&lt;br /&gt;          -NewColumnNames &lt;span style="color:Maroon;"&gt;"Nodename,hostname,tcpipaddress"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-9004821854500382102?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/9004821854500382102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=9004821854500382102' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/9004821854500382102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/9004821854500382102'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/08/removing-headerfooter-lines-from-csv.html' title='Removing Header/Footer lines from CSV files'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-7391598482849886879</id><published>2009-07-27T10:42:00.003-04:00</published><updated>2009-07-27T10:48:35.413-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='COPUG'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Central Ohio PowerShell Users Group</title><content type='html'>Please join us for our first Central Ohio PowerShell Users Group on Thursday, July 30th, 2009 at the Ohio State University Medical Center.  &lt;a href="http://jdhitsolutions.com/blog/"&gt;Jeffery Hicks, Microsoft MVP&lt;/a&gt; will be joining us! For more information, visit the &lt;a href="http://centralohiopug.wordpress.com/"&gt;Central Ohio PowerShell Users Group&lt;/a&gt; site.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-7391598482849886879?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/7391598482849886879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=7391598482849886879' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/7391598482849886879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/7391598482849886879'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/07/central-ohio-powershell-users-group.html' title='Central Ohio PowerShell Users Group'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-819576513539621032</id><published>2009-06-04T12:48:00.019-04:00</published><updated>2009-06-04T13:51:31.895-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WMI'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Searching for files remotely</title><content type='html'>&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;We are looking to possibly centralize the management of our OPT files. Thought maybe a quick script in PowerShell would do the trick. Ran the following line:&lt;/span&gt;&lt;/span&gt; &lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="WHITE-SPACE: pre"&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Get-childitem&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;\\server1-vp01\c$&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-Include&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; *.opt &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-Recurse&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; &lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;and waited, waited, waited...... 6 minutes later the console displayed my results.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Knowing a little bit about WMI, I decided to approach this from a different angle:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;pre&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;Get-WmiObject&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;-class&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;CIM_DATAFile&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;-computername&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;server-vp01&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;-filter&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;extension='opt' and drive='c:'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;This gave me back the results in 2.73 seconds! &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Comparing the times generated the following:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;pre&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;measure-command&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;get-childitem&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;\\server-vp01\c$&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-Include&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; *.opt &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-Recurse&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Days              : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Hours             : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Minutes           : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;6&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Seconds           : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;3&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Milliseconds      : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;476&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Ticks             : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;3634762131&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;TotalDays         : 0.00420690061458333&lt;br /&gt;TotalHours        : 0.10096561475&lt;br /&gt;TotalMinutes      : 6.057936885&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;TotalSeconds      : 363.4762131&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;TotalMilliseconds : 363476.2131&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;measure-command&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Get-WmiObject&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-class&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;CIM_DATAFile&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-computername&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;'server&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-vp01&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-filter&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;extension='opt' and drive='c:'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;br /&gt;Days              : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Hours             : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Minutes           : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Seconds           : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Milliseconds      : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;739&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;Ticks             : &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;27390035&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;TotalDays         : 3.17014293981481E&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff0000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;05&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;TotalHours        : 0.000760834305555556&lt;br /&gt;TotalMinutes      : 0.0456500583333333&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;TotalSeconds      : 2.7390035&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;TotalMilliseconds : 2739.0035&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Pretty obvious which method to use.&lt;br /&gt;Once again, PowerShell and WMI save the day.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-819576513539621032?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/819576513539621032/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=819576513539621032' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/819576513539621032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/819576513539621032'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/06/searching-for-files-remotely.html' title='Searching for files remotely'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-2557630538454903459</id><published>2009-06-03T09:01:00.003-04:00</published><updated>2009-06-03T09:17:28.018-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell Formatting Error</title><content type='html'>I was looking throught the PowerGUI forum yesterday when I saw a post similar to this:&lt;br /&gt;&lt;pre&gt;&lt;span style="color:#800080;"&gt;$processes&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style=" font-weight: bold;color:#5F9EA0;"&gt;Get-Process&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style=" font-style: italic;color:#5F9EA0;"&gt;-name&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;m*&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#800080;"&gt;$drives&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#FF0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style=" font-weight: bold;color:#5F9EA0;"&gt;Get-Wmiobject&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style=" font-weight: bold;color:#5F9EA0;"&gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=" font-style: italic;color:#5F9EA0;"&gt;-class&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;win32_logicaldisk&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style=" font-weight: bold;color:#5F9EA0;"&gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=" font-style: italic;color:#5F9EA0;"&gt;-Filter&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;DriveType=3&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#800080;"&gt;$processes&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#800080;"&gt;$driveinfo&lt;/span&gt;&lt;span style="color:#000000;"&gt; | &lt;/span&gt;&lt;span style=" font-weight: bold;color:#5F9EA0;"&gt;Format-Table&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style=" font-style: italic;color:#5F9EA0;"&gt;-autosize&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;When you run this code in an editor, you are likely to get the following error:&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#CC0000;"&gt; out-lineoutput : Object of type "Microsoft.PowerShell.Commands.Internal.Format.FormatStartData" is not legal or not in the correct sequence. This is likely caused by a user-specified "format-tabl e" command which is conflicting with the default formatting.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After a few minutes of research, I see that this has been registered on Microsoft Connect as a bug.  A quick, easy fix is to pass the $processes object down the pipline to Out-Default. ( $processes | Out-Default )&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Hope this helps!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-2557630538454903459?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/2557630538454903459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=2557630538454903459' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2557630538454903459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2557630538454903459'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/06/powershell-formatting-error.html' title='PowerShell Formatting Error'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-2241552832806289465</id><published>2009-05-31T18:39:00.013-04:00</published><updated>2009-05-31T21:18:17.420-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='TechED'/><title type='text'>TechED 2009 (Pics)</title><content type='html'>Had a great time at TechED. I met a lot of great folks including quite a few from the PowerScript community. Following are a few pics from TechED - specifically the Birds of a Feather Session that Hal and Steven hosted (Practical PowerShell: Best practices from the field - &lt;a href="http://powerscripting.wordpress.com/2009/05/18/episode-70-powershell-bof-session-from-teched/"&gt;Check out the recorded podcast of the session!&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_GKoVmIIMvWw/SiMKAauFZPI/AAAAAAAAAIY/D6HJJCkFYwM/s1600-h/BOF1.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 300px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5342124585280431346" border="0" alt="" src="http://4.bp.blogspot.com/_GKoVmIIMvWw/SiMKAauFZPI/AAAAAAAAAIY/D6HJJCkFYwM/s400/BOF1.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://halr9000.com/"&gt;Hal Rottenberg&lt;/a&gt;, PowerShell MVP &amp;amp; &lt;a href="http://www.mindofroot.com/"&gt;Steven Murawski &lt;/a&gt;hosting the BOF.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_GKoVmIIMvWw/SiMMYH1-PII/AAAAAAAAAIg/4i-Q1muQIQE/s1600-h/BOF2.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 300px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5342127191553358978" border="0" alt="" src="http://4.bp.blogspot.com/_GKoVmIIMvWw/SiMMYH1-PII/AAAAAAAAAIg/4i-Q1muQIQE/s400/BOF2.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;Hal fielding some questions.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_GKoVmIIMvWw/SiMNNuaTGwI/AAAAAAAAAIo/uR4SU5ySWvg/s1600-h/BOF3.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 300px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5342128112439335682" border="0" alt="" src="http://3.bp.blogspot.com/_GKoVmIIMvWw/SiMNNuaTGwI/AAAAAAAAAIo/uR4SU5ySWvg/s400/BOF3.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;Kirk Munro, PowerShell MVP (&lt;a href="http://poshoholic.com/"&gt;http://poshoholic.com/&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_GKoVmIIMvWw/SiMPqMHrNOI/AAAAAAAAAJI/ZKHTD5o6DiQ/s1600-h/BOF4.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 300px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5342130800473879778" border="0" alt="" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/SiMPqMHrNOI/AAAAAAAAAJI/ZKHTD5o6DiQ/s400/BOF4.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;From left to right, Steven Murawski, the back of Ed Wilson (1/2 of &lt;a href="http://www.microsoft.com/technet/scriptcenter/resources/qanda/default.mspx"&gt;the Scripting Guys&lt;/a&gt;) and John Merrill (IT content evangelist and publishing manager in the Windows Server and Solutions Division User Assistance group).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_GKoVmIIMvWw/SiMRx7QMWjI/AAAAAAAAAJQ/l_d1FyYjKh4/s1600-h/SteveM.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 300px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5342133132408412722" border="0" alt="" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/SiMRx7QMWjI/AAAAAAAAAJQ/l_d1FyYjKh4/s400/SteveM.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;Steven Murawski getting ready to work the PowerShell booth.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_GKoVmIIMvWw/SiMSbUCSvLI/AAAAAAAAAJY/GbMciBm0cFA/s1600-h/TechED_EdWilson.JPG"&gt;&lt;img style="WIDTH: 400px; HEIGHT: 300px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5342133843435633842" border="0" alt="" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/SiMSbUCSvLI/AAAAAAAAAJY/GbMciBm0cFA/s400/TechED_EdWilson.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;Ed Wilson evangelizing the merits of PowerShell.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Had a great time at the TechED, especially at the BOF and at the &lt;a href="http://dmitrysotnikov.wordpress.com/2009/05/13/powershell-dinner-at-teched-2009/"&gt;PowerShell Dinner&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-2241552832806289465?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/2241552832806289465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=2241552832806289465' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2241552832806289465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2241552832806289465'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/05/teched-2009-pics.html' title='TechED 2009 (Pics)'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GKoVmIIMvWw/SiMKAauFZPI/AAAAAAAAAIY/D6HJJCkFYwM/s72-c/BOF1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-939839219143657883</id><published>2009-05-28T22:58:00.003-04:00</published><updated>2009-05-28T23:14:06.496-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AD Commandlets'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>File Migration with PowerShell</title><content type='html'>Was recently tasked with assisting our file migration project. Until the following script (assumes you are using &lt;a href="http://www.quest.com/powershell/activeroles-server.aspx"&gt;Quest AD Commandlets&lt;/a&gt;), this was a manual process.&lt;br /&gt;&lt;pre&gt;&lt;span style="color:#800080;"&gt;$Users&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;get-content&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-path&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;c:\users.txt&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;foreach&lt;/span&gt;&lt;span style="color:#000000;"&gt; (&lt;/span&gt;&lt;span style="color:#800080;"&gt;$User&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;in&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$Users&lt;/span&gt;&lt;span style="color:#000000;"&gt;) {&lt;br /&gt;    &lt;/span&gt;&lt;span style="color:#800080;"&gt;$SourceFolder&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;\\HumanResources\vol10\Users\$User&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color:#800080;"&gt;$NewFolderName&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;$SourceFolder-Migrated&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color:#800080;"&gt;$homeDir&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;\\personal-p01\users$\&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$User&lt;/span&gt;&lt;span style="color:#000000;"&gt;.substring(&lt;/span&gt;&lt;span style="color:#000000;"&gt;0&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#000000;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;+&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;\$User&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Copy-Item&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$SourceFolder&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-Destination&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$homeDir&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-Recurse&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;br /&gt;    Set-QADUser &lt;/span&gt;&lt;span style="color:#800080;"&gt;$User&lt;/span&gt;&lt;span style="color:#000000;"&gt; -ObjectAttributes @{&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#800000;"&gt;HomeDirectory&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#800080;"&gt;$homeDir&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#800000;"&gt;HomeDrive&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#800000;"&gt;P:&lt;/span&gt;&lt;span style="color:#800000;"&gt;'&lt;/span&gt;&lt;span style="color:#000000;"&gt;}&lt;br /&gt;    &lt;/span&gt;&lt;span style="color:#800080;"&gt;$rule&lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;new-object&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;System.Security.AccessControl.FileSystemAccessRule&lt;/span&gt;&lt;span style="color:#000000;"&gt;(&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;OSUMC\$User&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;FullControl&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;Allow&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;foreach&lt;/span&gt;&lt;span style="color:#000000;"&gt; (&lt;/span&gt;&lt;span style="color:#800080;"&gt;$file&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000ff;"&gt;in&lt;/span&gt;&lt;span style="color:#000000;"&gt; $(&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Get-ChildItem&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$homeDir&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-recurse&lt;/span&gt;&lt;span style="color:#000000;"&gt;)) {&lt;br /&gt;        &lt;/span&gt;&lt;span style="color:#800080;"&gt;$acl&lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;get-acl&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$file&lt;/span&gt;&lt;span style="color:#000000;"&gt;.FullName&lt;br /&gt;        &lt;/span&gt;&lt;span style="color:#800080;"&gt;$acl&lt;/span&gt;&lt;span style="color:#000000;"&gt;.SetAccessRule(&lt;/span&gt;&lt;span style="color:#800080;"&gt;$rule&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;br /&gt;        &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;set-acl&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$File&lt;/span&gt;&lt;span style="color:#000000;"&gt;.Fullname &lt;/span&gt;&lt;span style="color:#800080;"&gt;$acl&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;    }&lt;br /&gt;    &lt;/span&gt;&lt;span style="color:#008000;"&gt;#&lt;/span&gt;&lt;span style="color:#008000;"&gt; set the acl on the root folder&lt;/span&gt;&lt;span style="color:#008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;    &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;set-acl&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$homeDir&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$acl&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;   &lt;br /&gt;    &lt;/span&gt;&lt;span style="color:#008000;"&gt;#&lt;/span&gt;&lt;span style="color:#008000;"&gt; Rename-item doesn't work, so copy and delete&lt;/span&gt;&lt;span style="color:#008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;    &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Copy-item&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$SourceFolder&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-Destination&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;$SourceFolder-migrated&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-Recurse&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Remove-Item&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$SourceFolder&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-Recurse&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-Force&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/pre&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-939839219143657883?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/939839219143657883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=939839219143657883' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/939839219143657883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/939839219143657883'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/05/file-migration-with-powershell.html' title='File Migration with PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-147302475289254973</id><published>2009-04-17T02:01:00.000-04:00</published><updated>2009-04-17T14:00:13.186-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Log Parser'/><category scheme='http://www.blogger.com/atom/ns#' term='Exchange 2003'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Using PowerShell, LogParser and PowerGadgets to get Exchange 2003 storage information – Part 1</title><content type='html'>Was asked this week to write up a script that would graphically show how much free space was available in our Exchange Databases. My twitter colleague &lt;a href="http://twitter.com/alanrenouf" target="_blank"&gt;Alan Renouf&lt;/a&gt; made me aware of Jonathan Medds's post about &lt;a href="http://jonathanmedd.blogspot.com/2009/01/using-powershell-to-find-free-space-in.html" target="_blank"&gt;Exchange free space&lt;/a&gt;. This gave me a good starting point. I now knew to look for EventID 1221 in the Exchange server(s) application event log. Being a big fan of &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&amp;amp;displaylang=en" target="_blank"&gt;LogParser&lt;/a&gt;, I decided to query the event logs using it instead of Get-WMIObject Win32_NTLogEvent.&amp;#160; My reasoning for this is two-fold, I have a lot of LogParser scripts that I am able to reuse in PowerShell.&amp;#160; Additionally, for many log parsing tasks, LogParser still is faster then using Select-String or other parsing methods.&amp;#160;&lt;br /&gt;&lt;br /&gt;I highly suggest that if you are entertaining the idea of using call LogParser within PowerShell, you should copy David Muegge’s LogParser library into your code base.&amp;#160; Check out &lt;a href="http://muegge.com/blog/?p=65" target="_blank"&gt;his posting&lt;/a&gt; for an explanation on how his library works (it is slick). &lt;br /&gt;&lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;&lt;br /&gt;  &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; Get-ExchangeEventLogRecords {&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;# Include our LogParser library&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;# Check out David Muegge's Blog&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;# http://muegge.com/blog/?p=65&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;# for more info on his library&lt;/span&gt;&lt;br /&gt;    .\LogParser_Lib.ps1&lt;/pre&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;# This is the query we will be passing&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;# to LogParser&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #008000"&gt;# Let's hear it for Here-Strings!&lt;/span&gt;&lt;br /&gt;    $query = &lt;span style="color: #006080"&gt;@&amp;quot;&lt;br /&gt;    SELECT ComputerName, timewritten, Message&lt;br /&gt;    FROM \\Exchange01\application&lt;br /&gt;    WHERE eventID = 1221 and&lt;br /&gt;      SourceName = 'MSExchangeIS Mailbox Store' and &lt;br /&gt;      to_date(timewritten) = System_Date()&lt;br /&gt;&amp;quot;&lt;/span&gt;@&lt;br /&gt;    $inputformat = Get-LPInputFormat &lt;span style="color: #006080"&gt;&amp;quot;evt&amp;quot;&lt;/span&gt;&lt;br /&gt;    $records = Get-LPRecordSet $query $inputformat&lt;br /&gt;    &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; $records&lt;br /&gt;}&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The function Get-ExchangeEventLogRecords returns all the records that I care about (in this example I have included only one Exchange Server). In order to get the exact fields I want, I need to parse the Message field from the event log.&amp;#160; The field looks something like this:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;The database &amp;quot;MSXC01SG4\MSXC01SG4DB4&amp;quot; has 4626 megabytes of free space after online defragmentation has terminated…&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;The next function takes care of the parsing and creates a custom object for me.&lt;br /&gt;&lt;br /&gt;&lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;&lt;br /&gt;  &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;br /&gt;    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; Format-ExchangeEventLogObject {&lt;br /&gt;    Begin {&lt;br /&gt;        $regex = [regex] &lt;span style="color: #006080"&gt;'(?:MSXC\w+\\MSXC\w+)'&lt;/span&gt;&lt;br /&gt;        $regex1 = [regex] &lt;span style="color: #006080"&gt;'(?:\s\d+)'&lt;/span&gt; }&lt;br /&gt;&amp;#160;&lt;br /&gt;    Process {&lt;br /&gt;        $Store = $regex.Match($_.message) | select Value&lt;br /&gt;        $Mem = $regex1.Match($_.message) | select Value&lt;br /&gt;        $Mem = $Mem.value.ToString().Trim()&lt;br /&gt;        $obj = New-Object psObject&lt;br /&gt;        $obj | Add-Member NoteProperty TimeWritten $_.TimeWritten&lt;br /&gt;        $obj | Add-Member NoteProperty ExchangeServer $_.ComputerName&lt;br /&gt;        $obj | Add-Member NoteProperty Store $Store.Value&lt;br /&gt;        $obj | Add-Member NoteProperty AvailableMem $Mem&lt;br /&gt;        Write-Output $obj }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;One thing to note, so far, we have only looked at the available space within the *.EDB file.&amp;#160; In the next post, I will take this information and gather a few more relevant fields (total size of the EDB file, size of STM file, estimated availability in the STM file) and show a graphical representation of the data.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-147302475289254973?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/147302475289254973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=147302475289254973' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/147302475289254973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/147302475289254973'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/04/using-powershell-logparser-and.html' title='Using PowerShell, LogParser and PowerGadgets to get Exchange 2003 storage information – Part 1'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-3616966789049379662</id><published>2009-04-09T10:46:00.002-04:00</published><updated>2009-04-09T10:48:23.321-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AD Commandlets'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Quest Management Shell 1.2 – Updated AD cmdlets!</title><content type='html'>&lt;p&gt;I just installed Quest’s latest version of their free AD cmdlets. After installing, I wanted to see what new cmdlets have been provided. The first thing I noticed in looking for the updated cmdlets was that you can no longer use Get-QADCommand to see the Quest Commands, that has been replaced with Get-QCommand.  Looks like there are 9 new cmdlets:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Add-QADMemberOf – I see this one getting some use!  Allows you to add a single object to one or many groups. &lt;/li&gt;&lt;li&gt;Approve-QARSApprovalTask – An ActiveRoles Server cmdlet.  Looks like a workflow approval cmdlet &lt;/li&gt;&lt;li&gt;Get-QADMemberOf – This will be handy for auditing purposes!  This cmdlet allows you to retrieve the groups that an object belongs to.  &lt;/li&gt;&lt;li&gt;Get-QADPasswordSettingsObjectAppliesTo – This new cmdlet is specific to Windows Server 2008 Active Directory.  Allows you to retrieve groups affected by a particular password settings object. &lt;/li&gt;&lt;li&gt;Get-QARSApprovalTask – Another ActiveRoles Server cmdlet.  You can use this one to grab approval task records. &lt;/li&gt;&lt;li&gt;Get-QARSOperation - Another ActiveRoles Server cmdlet.  Used to retrieve the operations records. &lt;/li&gt;&lt;li&gt;Reject-QARSApprovalTask – Like the Approve-QARSApprovalTask accept this one is used to reject the workflow task. &lt;/li&gt;&lt;li&gt;Remove-QADMemberOf – The opposite of Add-QADMemberOf.  Use the cmdlet to remove an object from one or more groups.  This one will get some use in our environment! &lt;/li&gt;&lt;li&gt;Restore-QADDeletedObject – Wish we had this one a few months ago!  This cmdlet will allow you to undelete objects in AD by restoring tombstones into normal objects.  An example from the help file demonstrates the power of this cmdlet:&lt;br /&gt;Get-QADUser -Tombstone -LastKnownParent '&amp;lt;DN of container&amp;gt;' -Name 'John Smith*'  Restore-QADDeletedObject &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Nice collection of new functionality! &lt;/p&gt;&lt;p&gt;When looking at the example in the help on Restore-QADDeletedObject, I saw the parameter –Tombstone used with Get-QADUser.  Further investigation yields that Quest has added quite a few parameters to various QAD cmdlets.&lt;/p&gt;&lt;p&gt;This is a list of new parameters from the documentation supplied with the new version:&lt;/p&gt;&lt;table cellspacing="0" cellpadding="2" width="434" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top" width="200"&gt;&lt;strong&gt;Parameters&lt;/strong&gt;&lt;/td&gt;&lt;td valign="top" width="232"&gt;&lt;strong&gt;Cmdlet added to&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top" width="200"&gt;Tombstone&lt;br /&gt;LastKnownParent&lt;/td&gt;&lt;td valign="top" width="232"&gt;Get-QADComputer&lt;br /&gt;Get-QADGroup&lt;br /&gt;Get-QADObject&lt;br /&gt;Get-QADPasswordSettingsObject&lt;br /&gt;Get-QADUser &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top" width="200"&gt;CreatedOn&lt;br /&gt;CreatedAfter&lt;br /&gt;CreatedBefore&lt;br /&gt;LastChangedOn&lt;br /&gt;LastChangedAfter&lt;br /&gt;LastChangedBefore &lt;/td&gt;&lt;td valign="top" width="232"&gt;Get-QADComputer&lt;br /&gt;Get-QADGroup&lt;br /&gt;Get-QADObject&lt;br /&gt;Get-QADPasswordSettingsObject&lt;br /&gt;Get-QADUser&lt;br /&gt;Get-QARSAccessTemplate&lt;br /&gt;Get-QARSAccessTemplateLink &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top" width="200"&gt;Type&lt;br /&gt;ObjectAttributes&lt;br /&gt;Name&lt;br /&gt;DisplayName&lt;br /&gt;Description&lt;br /&gt;Anr &lt;/td&gt;&lt;td valign="top" width="232"&gt;Get-QADGroupMember&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top" width="200"&gt;MemberOf&lt;br /&gt;IndirectMemberOf&lt;br /&gt;NotMemberOf&lt;br /&gt;NotIndirectMemberOf &lt;/td&gt;&lt;td valign="top" width="232"&gt;Get-QADComputer&lt;br /&gt;Get-QADGroup&lt;br /&gt;Get-QADObject&lt;br /&gt;Get-QADUser &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top" width="200"&gt;ContainsMember&lt;br /&gt;ContainsIndirectMember&lt;br /&gt;NotContainsMember&lt;br /&gt;NotContainsIndirectMember &lt;/td&gt;&lt;td valign="top" width="232"&gt;Get-QADGroup&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;Can’t wait to dive in a bit more and use the newest version.&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-3616966789049379662?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/3616966789049379662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=3616966789049379662' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3616966789049379662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3616966789049379662'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/04/quest-management-shell-12-updated-ad.html' title='Quest Management Shell 1.2 – Updated AD cmdlets!'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-8386669547365614667</id><published>2009-04-09T08:56:00.006-04:00</published><updated>2009-04-09T09:01:22.514-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='HIMSS'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>HIMSS - MSHUG Presentation</title><content type='html'>I had the opportunity to evangelize about PowerShell at the Healthcare Information and Management Systems Society (&lt;a href="http://himss.org/ASP/index.asp" target="_blank"&gt;HIMSS&lt;/a&gt;) - Microsoft Health Users Group (&lt;a href="http://www.mshug.org/index.aspx" target="_blank"&gt;MSHUG&lt;/a&gt;) last Saturday (4/4/2009). Other then my laptop freezing in the first ten minutes of the presentation, all went well. Given that I only had about 50 minutes, I decided to focus on &amp;quot;what&amp;quot; PowerShell can do versus &amp;quot;how&amp;quot;. So I demonstrated the following:   &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=F32921AF-9DBE-4DCE-889E-ECF997EB18E9&amp;amp;displaylang=en" target="_blank"&gt;Microsoft Baseline Security Analyzer&lt;/a&gt; (MBSA) report aggregation &lt;/li&gt;    &lt;li&gt;Process Tracking with WMI and &lt;a href="http://www.softwarefx.com/sfxSqlProducts/powerGadgets/" target="_blank"&gt;PowerGadgets&lt;/a&gt; (read/write text files) &lt;/li&gt;    &lt;li&gt;Citrix License usage (WMI, SQL Server and PowerGadgets) &lt;/li&gt;    &lt;li&gt;Print Queue analysis (WMI, PowerGadgets) &lt;/li&gt;    &lt;li&gt;Exchange 2003 reporting (WMI) &lt;/li&gt;    &lt;li&gt;Active Directory Maintenance (using Quest’s &lt;a href="http://www.quest.com/powershell/activeroles-server.aspx" target="_blank"&gt;ActiveRoles Management Shell for Active Directory&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;Bulk User Creation &lt;/li&gt;        &lt;li&gt;Group Creation &lt;/li&gt;        &lt;li&gt;Discussed other AD related cmdlets &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.vmware.com/sdk/vitk_win/index.html?rls=com.microsoft:*&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8&amp;amp;startIndex=&amp;amp;startPage=1" target="_blank"&gt;VM Infrastructure (VI) Toolkit&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;Iterate over all virtual machines &lt;/li&gt;        &lt;li&gt;Perusing the System Center events log with a custom GUI. A brief explanation of &lt;a href="http://www.primaltools.com/freetools/" target="_blank"&gt;PrimalForms&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;Conditional Formatting in Excel with VM data &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;There were not nearly as many questions as I had anticipate (perhaps following lunch had a little to do with that).&amp;#160; Of the questions asked, a couple stood out.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Why not continue to use VBScript and/or Perl &lt;/li&gt;    &lt;li&gt;Can scripts be compiled &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Was able to reiterate the point that if you are moving forward with Microsoft, you really have no choice.&amp;#160; Throughout the session I tried to emphasize the power of objects and how utilizing them makes a systems admin job so much easier. As far as compiling is concerned, my response was “if compiling them is a requirement, then you should look at writing it in C# instead”.&amp;#160; Would be interested in seeing how others would have responded.&lt;/p&gt;  &lt;p&gt;I want to thank the following people for sending PowerShell related materials for distribution at the session:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Susan Roper (Quest Software) &lt;/li&gt;    &lt;li&gt;SoftwareFX sales staff &lt;/li&gt;    &lt;li&gt;Jeffery Hicks (Sapien Technologies) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-8386669547365614667?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/8386669547365614667/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=8386669547365614667' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8386669547365614667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/8386669547365614667'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/04/himss-mshug-presentation.html' title='HIMSS - MSHUG Presentation'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-1861611909950890356</id><published>2009-03-05T10:11:00.010-05:00</published><updated>2009-03-06T15:46:27.116-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Addins'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>Additional cmdlets for PowerShell</title><content type='html'>I was putting together some documentation for my upcoming HIMSS - MSHUG PowerShell discussion and thought it would be a good idea to list the additional cmdlets that are currently available (many are free). Following is a dynamic list of the ones I am aware. Let me know if there are more to be added!&lt;br /&gt;&lt;br /&gt;&lt;ul style="FONT-FAMILY: arial"&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://community.citrix.com/cdn/xs/sdks"&gt;Citrix XenServerPSSnapIn: The XenServer SDK for PowerShell&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.citrix.com/English/ps2/products/product.asp?contentID=1297816"&gt;Citrix WorkFlow Studio&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://cloudberrylab.com/"&gt;CloudBerry Explorer for Amazon S3&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.compellent.com/News-and-Events/Press-Releases/2008/PowerShell_081211.aspx"&gt;Compellent Storage Center Command Set for Windows PowerShell&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www-01.ibm.com/support/docview.wss?rs=171&amp;amp;uid=swg24017698"&gt;IBM: WebSphere MQ - Windows Powershell Library&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.nsoftware.com/powershell/" target="_blank"&gt;n/Software NetCmdlets&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.softwarefx.com/sfxSqlProducts/powerGadgets/"&gt;PowerGadgets&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/PowerShellCX"&gt;PowerShell Community Extensions&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://thepowershellguy.com/blogs/posh/pages/powertab.aspx"&gt;PowerTab&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.quest.com/powershell/activeroles-server.aspx"&gt;Quest Cmdlets for Active Directory&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.scriptinganswers.com/tools.asp"&gt;SAPIEN PowerShell Extensions (PshX-SAPIEN) v1.2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.sdmsoftware.com/freeware.php" target="_blank"&gt;SDM GPMC Windows PowerShell Cmdlets&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.specopssoft.com/powershell/" target="_blank"&gt;Specops Command&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.truesec.com/PublicStore/catalog/categoryinfo.aspx?cid=223&amp;amp;AspxAutoDetectCookieSupport=1"&gt;TrueSec Fine Grain Password Policy Tool Beta 2 (x86)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a accesskey="1" href="http://blogs.vmware.com/vipowershell/"&gt;VMWare VI Toolkit (for Windows)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://gallery.zimbra.com/gallery.php?act=viewProd&amp;amp;productId=21"&gt;ZimbraPowerShell&lt;/a&gt; &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-1861611909950890356?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/1861611909950890356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=1861611909950890356' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/1861611909950890356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/1861611909950890356'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/03/additional-cmdlets-for-powershell.html' title='Additional cmdlets for PowerShell'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-33162664409925386</id><published>2009-02-27T11:35:00.003-05:00</published><updated>2009-02-27T11:41:09.623-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='WSUS'/><title type='text'>PowerShell and WSUS</title><content type='html'>&lt;p&gt;Was recently tasked with writing an audit script of what servers we control that were not currently in WSUS.  Following is a script that generates 2 text files.  The first one will be a list of servers in the specific OU that we are concerned with are in WSUS and the second will be a listing of those that are not.&lt;/p&gt;&lt;p&gt;Shout out to &lt;a href="http://twitter.com/jonathanmedd"&gt;Jonathan Medd&lt;/a&gt; for showing the way with his &lt;a href="http://www.powergui.org/entry.jspa?categoryID=21&amp;amp;externalID=2061" target="_blank"&gt;WSUS PowerPack&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;div style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border: solid 1px gray; cursor: text; margin: 20px 0px 10px 0px; max-height: 200px; overflow: auto; padding: 4px 4px 4px 4px; width: 97.5%;"&gt;&lt;div style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%;"&gt;&lt;br /&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;&lt;span style="color: #0000ff;"&gt;function&lt;/span&gt; Get-WSUSComputers()&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;{&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    [void][reflection.assembly]::LoadWithPartialName(&lt;span style="color: #006080;"&gt;"Microsoft.UpdateServices.Administration"&lt;/span&gt;)&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;    $wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::getUpdateServer(&lt;span style="color: #006080;"&gt;'WSUS_Server'&lt;/span&gt;,$false)&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    $wsus.GetComputerTargets()&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;}&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;$ServerList = &lt;span style="color: #006080;"&gt;'c:\ProductionScripts\Servers.txt'&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;$WSUSList = &lt;span style="color: #006080;"&gt;'c:\ProductionScripts\WSUS.txt'&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;$InWSUS = &lt;span style="color: #006080;"&gt;'c:\ProductionScripts\FirstInSecond.txt'&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;$NotInWSUS = &lt;span style="color: #006080;"&gt;'c:\ProductionScripts\FirstNotInSecond.txt'&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;&lt;span style="color: #008000;"&gt;# Export out a list of all servers&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;Get-QADComputer -OSName *Server* `&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    -SearchRoot &lt;span style="color: #006080;"&gt;'OU=Your OU,OU=Your Company,DC=Company,DC=com'&lt;/span&gt; |`&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;    Sort-Object DNSName | `&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    Select-Object DNSName | `&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;    Out-File -FilePath $ServerList -Force&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;&lt;span style="color: #008000;"&gt;# Export out a list of all servers&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;&lt;span style="color: #008000;"&gt;# listed in WSUS&lt;/span&gt;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;Get-WSUSComputers | Sort FullDomainName |`&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    Select FullDomainName | `&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;    Out-File -FilePath $WSUSList -Force&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;$Servers = get-content $ServerList&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;$WSUS = get-content $WSUSList &lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;New-Item $InWSUS -Type file -Force&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;New-Item $NotInWSUS -Type file -Force&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;Foreach ($Server &lt;span style="color: #0000ff;"&gt;in&lt;/span&gt; $Servers)&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;{&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;    If ($WSUS -contains $Server)&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    {&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;        Add-content $InWSUS $Server&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    }&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;    Else&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    {&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;        Add-content $NotInWSUS $Server&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em; background-color: white;"&gt;    }&lt;/pre&gt;&lt;pre style="background-color: #f4f4f4; font-family: Consolas, 'Courier New', Courier, Monospace; font-size: 8pt; line-height: 12pt;  border-style: none; color: black; overflow: visible; padding: 0px 0px 0px 0px; width: 100%; margin: 0em;"&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-33162664409925386?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/33162664409925386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=33162664409925386' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/33162664409925386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/33162664409925386'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/02/powershell-and-wsus.html' title='PowerShell and WSUS'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-2062519680413088682</id><published>2009-02-19T08:59:00.008-05:00</published><updated>2009-02-19T13:36:48.349-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VM'/><category scheme='http://www.blogger.com/atom/ns#' term='Excel'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell, VM &amp; Excel (Conditional Formatting)</title><content type='html'>Some of our support staff recently asked if they could get access to the VM Virtual Center in order to see the status of VM servers.  We recognized the importance of giving them this information, but did not like the idea of giving them access to Virtual Center.  So I was asked for suggestions: Yep you guessed it PowerShell to the rescue!&lt;br /&gt;&lt;br /&gt;I wrote a script that gets all the Virtual machines and then populates an Excel spreadsheet.  But wait there's more!  A colleague asked if it was possible to create a dashboard (you know Green for good, Red for bad).  Being quite familiar with Excel, I knew conditional formatting was the answer.&lt;br /&gt;&lt;br /&gt;This is a simplified version of the output from the script (only 2 properties):&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GKoVmIIMvWw/SZ2VGnylf-I/AAAAAAAAAIQ/KQGJ-kDc3Mo/s1600-h/vmExcel.png"&gt;&lt;img style="cursor: pointer; width: 211px; height: 155px;" src="http://3.bp.blogspot.com/_GKoVmIIMvWw/SZ2VGnylf-I/AAAAAAAAAIQ/KQGJ-kDc3Mo/s400/vmExcel.png" alt="" id="BLOGGER_PHOTO_ID_5304559877105221602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;How did we make this work?  Well, the first thing I do when automating Excel from PowerShell is to open up Excel and record a macro.  I find it helpful to do this in very meticulous fashion. I record individual tasks then hit Alt-F11 to look at the generated code. If you have no experience with VBA and Excel, you should take a few minutes to &lt;a href="http://www.google.com/search?hl=en&amp;amp;q=Excel+create+macro"&gt;get acquainted&lt;/a&gt;. Once I see the VBA code, I have a good idea how to convert it into PowerShell.&lt;br /&gt;&lt;br /&gt;Here is the script:&lt;div   style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; background-color: rgb(244, 244, 244); line-height: 12pt; cursor: text; max-height: 200px; width: 97.5%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;"&gt;&lt;div    style="border-style: none; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;br /&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   1:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Create $cred variable (only if you need to pass different creds)&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   2:&lt;/span&gt; $cred = Get-Credential &lt;span style="color: rgb(0, 96, 128);"&gt;'osu\fatbeard'&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   3:&lt;/span&gt; Connect-VIServer -Server &lt;span style="color: rgb(0, 96, 128);"&gt;'VM-Server'&lt;/span&gt; -Credential $cred&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   4:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   5:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Get all VM Boxes, we are interested in this&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   6:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# point only in the name and PowerState&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   7:&lt;/span&gt; $VirtualServers = Get-VM | sort Name | select Name, PowerState &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   8:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;   9:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Create an instance of Excel&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  10:&lt;/span&gt; $Excel = New-Object -comobject Excel.Application&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  11:&lt;/span&gt; $Excel.visible = $True &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  12:&lt;/span&gt; $Workbook = $Excel.Workbooks.Add()&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  13:&lt;/span&gt; $Info = $Workbook.Worksheets.Item(1)&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  14:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  15:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Create our column headers&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  16:&lt;/span&gt; $Info.Cells.Item(1,1) = &lt;span style="color: rgb(0, 96, 128);"&gt;"VM Name"&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  17:&lt;/span&gt; $Info.Cells.Item(1,2) = &lt;span style="color: rgb(0, 96, 128);"&gt;"PowerState"&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  18:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  19:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Add a little formatting to the column header&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  20:&lt;/span&gt; $Style = $Info.UsedRange&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  21:&lt;/span&gt; $Style.Interior.ColorIndex = 19&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  22:&lt;/span&gt; $Style.Font.ColorIndex = 11&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  23:&lt;/span&gt; $Style.Font.Bold = $True&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  24:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  25:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Data starts at row 2&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  26:&lt;/span&gt; $intRow = 2&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  27:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  28:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# iterate over each VM&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  29:&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;foreach&lt;/span&gt; ($VirtualServer &lt;span style="color: rgb(0, 0, 255);"&gt;in&lt;/span&gt; $VirtualServers)&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  30:&lt;/span&gt; {&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  31:&lt;/span&gt;     &lt;span style="color: rgb(0, 0, 255);"&gt;if&lt;/span&gt; ($VirtualServer.PowerState &lt;span style="color: rgb(204, 102, 51);"&gt;-eq&lt;/span&gt; &lt;span style="color: rgb(0, 96, 128);"&gt;"PoweredOn"&lt;/span&gt;)&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  32:&lt;/span&gt;     {&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  33:&lt;/span&gt;         $PoweredState = 1&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  34:&lt;/span&gt;     }&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  35:&lt;/span&gt;     &lt;span style="color: rgb(0, 0, 255);"&gt;else&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  36:&lt;/span&gt;     {&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  37:&lt;/span&gt;         $PoweredState = 0&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  38:&lt;/span&gt;     }    &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  39:&lt;/span&gt;     &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  40:&lt;/span&gt;     $Style.Cells.Item($intRow, 1) = $VirtualServer.Name&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  41:&lt;/span&gt;     $Style.Cells.Item($intRow, 2) = $PoweredState &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  42:&lt;/span&gt;     $intRow++&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  43:&lt;/span&gt; }&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  44:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  45:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;## Now for some formatting &lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  46:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;#  For more data on the enumeration values look at the following:&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  47:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;#  XlFormatConditionType Enumeration:       http://msdn.microsoft.com/en-us/library/bb241301.aspx &lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  48:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;#  XlFormatConditionOperator Enumeration: http://msdn.microsoft.com/en-us/library/bb241299.aspx&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  49:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;#  XlIconSet Enumeration                  http://msdn.microsoft.com/en-us/library/bb241324.aspx&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  50:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;#  XlConditionValueTypes Enumeration      http://msdn.microsoft.com/en-us/library/bb241028.aspx&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  51:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;## The constants that we will use&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  52:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  53:&lt;/span&gt; $xlCenter = -4108&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  54:&lt;/span&gt; $xlCellValue = 1&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  55:&lt;/span&gt; $xlEqual = 3&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  56:&lt;/span&gt; $xl3TrafficLights2 = 5&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  57:&lt;/span&gt; $xl3Symbols = 7&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  58:&lt;/span&gt; $xlConditionValueNumber = 0&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  59:&lt;/span&gt; $xlIconSet = 6&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  60:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  61:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Make Column "A" wide enough for content&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  62:&lt;/span&gt; $info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"A:A"&lt;/span&gt;).entireColumn.Autofit()&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  63:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  64:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# Make Column "B" wide enough for content and Center the contents&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  65:&lt;/span&gt; $info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).entireColumn.Autofit()&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  66:&lt;/span&gt; $info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).HorizontalAlignment = $xlCenter &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  67:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  68:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;# This will fill the cell&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  69:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;#$Info.Range("B:B").FormatConditions.Add($xlCellValue,$xlEqual,'="Y"')&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  70:&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;#$Info.Range("B:B").FormatConditions.Item(1).Interior.Color = 5296274&lt;/span&gt;&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  71:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  72:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.Add($xlIconSet)&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  73:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.AddIconSetCondition&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  74:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.Item(1).ShowIconOnly = $true&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  75:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.Item(1).IconSet = $Excel.ActiveWorkbook.IconSets.Item($xl3Symbols)&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  76:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.Item(1).IconCriteria.Item(2).Value = 0&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  77:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.Item(1).IconCriteria.Item(2).Operator = 5&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  78:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.Item(1).IconCriteria.Item(3).Value = 1&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  79:&lt;/span&gt; $Info.Range(&lt;span style="color: rgb(0, 96, 128);"&gt;"B:B"&lt;/span&gt;).FormatConditions.Item(1).IconCriteria.Item(3).Operator = 7&lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  80:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  81:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  82:&lt;/span&gt;  &lt;/pre&gt;&lt;pre    style="border-style: none; margin: 0em; padding: 0px; overflow: visible; background-color: rgb(244, 244, 244); line-height: 12pt; width: 100%;font-family:Consolas,'Courier New',Courier,Monospace;font-size:8pt;color:black;"&gt;&lt;span style="color: rgb(96, 96, 96);"&gt;  83:&lt;/span&gt;  &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;I have included MSDN links in the code to the Excel enumerations used to write this script.&lt;br /&gt;All that is left to do is to schedule it and save it somewhere accessible to the Support Center staff.  Another todo from a VM scripting perspective is figure out a way to get the custom fields.  Leave me a comment if you have already figured that one out!&lt;br /&gt;&lt;br /&gt;Enjoy!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-2062519680413088682?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/2062519680413088682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=2062519680413088682' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2062519680413088682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2062519680413088682'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/02/powershell-vm-excel-conditional.html' title='PowerShell, VM &amp; Excel (Conditional Formatting)'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_GKoVmIIMvWw/SZ2VGnylf-I/AAAAAAAAAIQ/KQGJ-kDc3Mo/s72-c/vmExcel.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6360422999345717915</id><published>2009-02-16T16:22:00.011-05:00</published><updated>2009-02-16T17:00:21.317-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Log Parser'/><category scheme='http://www.blogger.com/atom/ns#' term='Add-Member'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell/Log Parser 2.2 and Add-Member</title><content type='html'>&lt;p&gt;I recently stumbled upon a great post by David Muegge titled “&lt;a href="http://muegge.com/blog/?p=65" target="_blank"&gt;Log Parser and PowerShell - Part II&lt;/a&gt;”. David does a great job of wrapping PowerShell around Log Parser. I highly recommend that you take a look at his blog post. I was looking at his functions and decided that I should give them a try against some production data. I decided to look at failed login attempts (we have had an issue with an particular application).&lt;/p&gt;&lt;p&gt;What I was looking for was a count of failed logins (from the Strings property). The following code assumes that you are using David’s Library.&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;!-- Code highlighting produced by Actipro SyntaxEditor http://www.ActiproSoftware.com/Products/DotNet/ --&gt;&lt;span style="color:#800080;"&gt;$query&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;SELECT Strings FROM '\\XX-P01\Security' WHERE EventID = 529&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#800080;"&gt;$inputformat&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; Get-LPInputFormat &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;evt&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#800080;"&gt;$records&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; Get-LPRecordSet &lt;/span&gt;&lt;span style="color:#800080;"&gt;$query&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$inputformat&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#800080;"&gt;$records&lt;/span&gt;&lt;span style="color:#000000;"&gt;  &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Add-Member&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-name&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;User&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-value&lt;/span&gt;&lt;span style="color:#000000;"&gt; {&lt;/span&gt;&lt;span style="color:#800080;"&gt;$this&lt;/span&gt;&lt;span style="color:#000000;"&gt;.Strings.substring(&lt;/span&gt;&lt;span style="color:#000000;"&gt;0&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&lt;/span&gt;&lt;span style="color:#800080;"&gt;$this&lt;/span&gt;&lt;span style="color:#000000;"&gt;.Strings.indexof(&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;))}&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-memberType&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;ScriptProperty&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-force&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-passThru&lt;/span&gt;&lt;span style="color:#000000;"&gt;  &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;        &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Group-Object&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;User&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-noElement&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;        &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Sort-Object&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-descending&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;Count&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;`&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;        &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;Select-Object&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-first&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;In order to get exactly what I wanted, I added a new property to this object: "User"&lt;br /&gt;&lt;br /&gt;In order to do this, I needed to parse the Strings property of my $Records object for everything before the first pipe.&lt;br /&gt;&lt;br /&gt;$&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.Strings.substring(0,$&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.Strings.indexof(&lt;span style="color:#006080;"&gt;""&lt;/span&gt;)) achieves the desired value.&lt;br /&gt;&lt;br /&gt;This gives us:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Count Name&lt;br /&gt;----- ----&lt;br /&gt;   81 cluster&lt;br /&gt;   30 mastersql&lt;br /&gt;   18 Administrator&lt;br /&gt;    9 home50&lt;br /&gt;    8 marg98&lt;br /&gt;    7 bart01&lt;br /&gt;    7 lisa27&lt;br /&gt;    6 Nels07&lt;br /&gt;    5 barn10&lt;br /&gt;    4 skin01&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Just what I was looking for!&lt;br /&gt;Enjoy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6360422999345717915?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6360422999345717915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6360422999345717915' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6360422999345717915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6360422999345717915'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/02/powershelllog-parser-22-and-add-member.html' title='PowerShell/Log Parser 2.2 and Add-Member'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-2735223732802187660</id><published>2009-02-04T10:35:00.002-05:00</published><updated>2009-02-04T10:43:45.887-05:00</updated><title type='text'>Project Euler and PowerShell - Problem 13</title><content type='html'>&lt;p&gt;This one was simple!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Work out the first ten digits of the sum of the following one-hundred 50-digit numbers.&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;37107287533902102798797998220837590246510135740250&lt;br /&gt;46376937677490009712648124896970078050417018260538&lt;br /&gt;74324986199524741059474233309513058123726617309629&lt;br /&gt;91942213363574161572522430563301811072406154908250&lt;br /&gt;23067588207539346171171980310421047513778063246676&lt;br /&gt;89261670696623633820136378418383684178734361726757&lt;br /&gt;28112879812849979408065481931592621691275889832738&lt;br /&gt;44274228917432520321923589422876796487670272189318&lt;br /&gt;47451445736001306439091167216856844588711603153276&lt;br /&gt;70386486105843025439939619828917593665686757934951&lt;br /&gt;62176457141856560629502157223196586755079324193331&lt;br /&gt;64906352462741904929101432445813822663347944758178&lt;br /&gt;92575867718337217661963751590579239728245598838407&lt;br /&gt;58203565325359399008402633568948830189458628227828&lt;br /&gt;80181199384826282014278194139940567587151170094390&lt;br /&gt;35398664372827112653829987240784473053190104293586&lt;br /&gt;86515506006295864861532075273371959191420517255829&lt;br /&gt;71693888707715466499115593487603532921714970056938&lt;br /&gt;54370070576826684624621495650076471787294438377604&lt;br /&gt;53282654108756828443191190634694037855217779295145&lt;br /&gt;36123272525000296071075082563815656710885258350721&lt;br /&gt;45876576172410976447339110607218265236877223636045&lt;br /&gt;17423706905851860660448207621209813287860733969412&lt;br /&gt;81142660418086830619328460811191061556940512689692&lt;br /&gt;51934325451728388641918047049293215058642563049483&lt;br /&gt;62467221648435076201727918039944693004732956340691&lt;br /&gt;15732444386908125794514089057706229429197107928209&lt;br /&gt;55037687525678773091862540744969844508330393682126&lt;br /&gt;18336384825330154686196124348767681297534375946515&lt;br /&gt;80386287592878490201521685554828717201219257766954&lt;br /&gt;78182833757993103614740356856449095527097864797581&lt;br /&gt;16726320100436897842553539920931837441497806860984&lt;br /&gt;48403098129077791799088218795327364475675590848030&lt;br /&gt;87086987551392711854517078544161852424320693150332&lt;br /&gt;59959406895756536782107074926966537676326235447210&lt;br /&gt;69793950679652694742597709739166693763042633987085&lt;br /&gt;41052684708299085211399427365734116182760315001271&lt;br /&gt;65378607361501080857009149939512557028198746004375&lt;br /&gt;35829035317434717326932123578154982629742552737307&lt;br /&gt;94953759765105305946966067683156574377167401875275&lt;br /&gt;88902802571733229619176668713819931811048770190271&lt;br /&gt;25267680276078003013678680992525463401061632866526&lt;br /&gt;36270218540497705585629946580636237993140746255962&lt;br /&gt;24074486908231174977792365466257246923322810917141&lt;br /&gt;91430288197103288597806669760892938638285025333403&lt;br /&gt;34413065578016127815921815005561868836468420090470&lt;br /&gt;23053081172816430487623791969842487255036638784583&lt;br /&gt;11487696932154902810424020138335124462181441773470&lt;br /&gt;63783299490636259666498587618221225225512486764533&lt;br /&gt;67720186971698544312419572409913959008952310058822&lt;br /&gt;95548255300263520781532296796249481641953868218774&lt;br /&gt;76085327132285723110424803456124867697064507995236&lt;br /&gt;37774242535411291684276865538926205024910326572967&lt;br /&gt;23701913275725675285653248258265463092207058596522&lt;br /&gt;29798860272258331913126375147341994889534765745501&lt;br /&gt;18495701454879288984856827726077713721403798879715&lt;br /&gt;38298203783031473527721580348144513491373226651381&lt;br /&gt;34829543829199918180278916522431027392251122869539&lt;br /&gt;40957953066405232632538044100059654939159879593635&lt;br /&gt;29746152185502371307642255121183693803580388584903&lt;br /&gt;41698116222072977186158236678424689157993532961922&lt;br /&gt;62467957194401269043877107275048102390895523597457&lt;br /&gt;23189706772547915061505504953922979530901129967519&lt;br /&gt;86188088225875314529584099251203829009407770775672&lt;br /&gt;11306739708304724483816533873502340845647058077308&lt;br /&gt;82959174767140363198008187129011875491310547126581&lt;br /&gt;97623331044818386269515456334926366572897563400500&lt;br /&gt;42846280183517070527831839425882145521227251250327&lt;br /&gt;55121603546981200581762165212827652751691296897789&lt;br /&gt;32238195734329339946437501907836945765883352399886&lt;br /&gt;75506164965184775180738168837861091527357929701337&lt;br /&gt;62177842752192623401942399639168044983993173312731&lt;br /&gt;32924185707147349566916674687634660915035914677504&lt;br /&gt;99518671430235219628894890102423325116913619626622&lt;br /&gt;73267460800591547471830798392868535206946944540724&lt;br /&gt;76841822524674417161514036427982273348055556214818&lt;br /&gt;97142617910342598647204516893989422179826088076852&lt;br /&gt;87783646182799346313767754307809363333018982642090&lt;br /&gt;10848802521674670883215120185883543223812876952786&lt;br /&gt;71329612474782464538636993009049310363619763878039&lt;br /&gt;62184073572399794223406235393808339651327408011116&lt;br /&gt;66627891981488087797941876876144230030984490851411&lt;br /&gt;60661826293682836764744779239180335110989069790714&lt;br /&gt;85786944089552990653640447425576083659976645795096&lt;br /&gt;66024396409905389607120198219976047599490197230297&lt;br /&gt;64913982680032973156037120041377903785566085089252&lt;br /&gt;16730939319872750275468906903707539413042652315011&lt;br /&gt;94809377245048795150954100921645863754710598436791&lt;br /&gt;78639167021187492431995700641917969777599028300699&lt;br /&gt;15368713711936614952811305876380278410754449733078&lt;br /&gt;40789923115535562561142322423255033685442488917353&lt;br /&gt;44889911501440648020369068063960672322193204149535&lt;br /&gt;41503128880339536053299340368006977710650566631954&lt;br /&gt;81234880673210146739058568557934581403627822703280&lt;br /&gt;82616570773948327592232845941706525094512325230608&lt;br /&gt;22918802058777319719839450180888072429661980811197&lt;br /&gt;77158542502016545090413245809786882778948721859617&lt;br /&gt;72107838435069186155435662884062257473692284509516&lt;br /&gt;20849603980134001723930671666823555245252804609722&lt;br /&gt;53503534226472524250874054075591789781264330331690&lt;/p&gt;&lt;br /&gt;&lt;p&gt;I saved the above list of 50 digit numbers as a text file and ran the following PowerShell code&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;!--&lt;br /&gt;&lt;br /&gt;Code highlighting produced by Actipro SyntaxEditor&lt;br /&gt;http://www.ActiproSoftware.com/Products/DotNet/&lt;br /&gt;&lt;br /&gt;--&gt;&lt;span style="color: #800080;"&gt;$file&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #5F9EA0; font-weight: bold;"&gt;Get-Content&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #5F9EA0; font-style: italic;"&gt;-path&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;c&lt;/span&gt;&lt;span style="color: #000000;"&gt;:\&lt;/span&gt;&lt;span style="color: #800000;"&gt;numbers.txt&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;[&lt;/span&gt;&lt;span style="color: #008080;"&gt;double&lt;/span&gt;&lt;span style="color: #000000;"&gt;]&lt;/span&gt;&lt;span style="color: #800080;"&gt;$total&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #000000;"&gt;0&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;foreach&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #800080;"&gt;$line&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;in&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800080;"&gt;$file&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;br /&gt;{&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #800080;"&gt;$total&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;+=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800080;"&gt;$line&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #800080;"&gt;$total&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Told you it was easy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-2735223732802187660?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/2735223732802187660/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=2735223732802187660' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2735223732802187660'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/2735223732802187660'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/02/project-euler-and-powershell-problem-13.html' title='Project Euler and PowerShell - Problem 13'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-3315179514441675810</id><published>2009-01-30T14:25:00.005-05:00</published><updated>2009-01-30T14:52:36.130-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Compare-Object'/><title type='text'>Compare-Object –SyncWindow parameter</title><content type='html'>&lt;p&gt;I was comparing two lengthy configuration files (XML) knowing ahead of time that there were only a couple differences between them. The code I used was as follows:&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;$a = Get-Content file1.xml&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000099;"&gt;$b = Get-Content File2.xml&lt;br /&gt;Compare-Object $a $b &lt;/span&gt;&lt;/p&gt;&lt;p&gt;My result set was not at all what I expected. Instead of being a few lines it was almost the size as my two files combined! I was confused (and a little hungry). Turning to &lt;strong&gt;Get-Help compare-object -full&lt;/strong&gt;, I saw this:&lt;/p&gt;&lt;p&gt;-syncWindow (int)&lt;br /&gt;Defines a search region where an attempt is made to re-sync the order if there is no match. &lt;/p&gt;&lt;p&gt;Required? false&lt;br /&gt;Position? named&lt;br /&gt;&lt;strong&gt;Default value 5&lt;br /&gt;&lt;/strong&gt;Accept pipeline input? false&lt;br /&gt;Accept wildcard characters? false&lt;/p&gt;&lt;p&gt;I must admit that I did not find this intuitive. Looks like by default it will look 5 lines up and 5 lines down for a match before moving on. Grabbing a Snickers and Diet Coke, I took my newly acquired knowledge and tried the following:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;$a = Get-Content file1.xml&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000099;"&gt;$b = Get-Content File2.xml&lt;br /&gt;Compare-Object $a $b -SyncWindow 50&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Success!! Fat and happy, I now have the results I expected. &lt;/p&gt;&lt;p&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;InputObject&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;SideIndicator&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;driver-configuration dn="...."&lt;/td&gt;&lt;td&gt;"=&amp;gt;"&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;shim-auth-id value=""&lt;/td&gt;&lt;td&gt;"=&amp;gt;"&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-3315179514441675810?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/3315179514441675810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=3315179514441675810' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3315179514441675810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/3315179514441675810'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/01/compare-object-syncwindow-parameter.html' title='Compare-Object –SyncWindow parameter'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-4813631116683547262</id><published>2009-01-24T20:08:00.004-05:00</published><updated>2009-01-24T20:14:34.687-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Euler'/><title type='text'>Project Euler and PowerShell - Problem 19</title><content type='html'>Eleven down, 14 more to go before I reach level 1 (tetrahedron) on Project Euler. This one was easy if you know what PowerShell can do with dates!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How many Sundays fell on the first of the month during the twentieth century (1 Jan 1901 to 31 Dec 2000)? &lt;/strong&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="color: #800080;"&gt;$startDate&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #5F9EA0; font-weight: bold;"&gt;Get-Date&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;01/01/1901&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #800080;"&gt;$endDate&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #5F9EA0; font-weight: bold;"&gt;Get-Date&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;12/31/2000&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #800080;"&gt;$cnt&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #000000;"&gt;0&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;for&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #800080;"&gt;$date&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;=&lt;/span&gt;&lt;span style="color: #800080;"&gt;$startDate&lt;/span&gt;&lt;span style="color: #000000;"&gt;; &lt;/span&gt;&lt;span style="color: #800080;"&gt;$date&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;-lt&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800080;"&gt;$endDate&lt;/span&gt;&lt;span style="color: #000000;"&gt;; &lt;/span&gt;&lt;span style="color: #800080;"&gt;$date&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800080;"&gt;$date&lt;/span&gt;&lt;span style="color: #000000;"&gt;.AddMonths(&lt;/span&gt;&lt;span style="color: #000000;"&gt;1&lt;/span&gt;&lt;span style="color: #000000;"&gt;))&lt;br /&gt;{&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;if&lt;/span&gt;&lt;span style="color: #000000;"&gt; (&lt;/span&gt;&lt;span style="color: #800080;"&gt;$date&lt;/span&gt;&lt;span style="color: #000000;"&gt;.DayOfWeek &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;-eq&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;'&lt;/span&gt;&lt;span style="color: #800000;"&gt;Sunday&lt;/span&gt;&lt;span style="color: #800000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;br /&gt;    {&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #800080;"&gt;$cnt&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;++&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;    }    &lt;br /&gt;}    &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #800080;"&gt;$cnt&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-4813631116683547262?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/4813631116683547262/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=4813631116683547262' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4813631116683547262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4813631116683547262'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/01/project-euler-and-powershell-problem-19.html' title='Project Euler and PowerShell - Problem 19'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-1098925273085947745</id><published>2009-01-14T12:28:00.004-05:00</published><updated>2009-01-14T14:11:24.845-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exchange 2003'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell and Exchange 2003</title><content type='html'>&lt;p&gt;Was tasked with getting some information out of Exchange 2003. Basically they wanted me to match up mailbox accounts with AD Users.&amp;#160; The only consistent way to do this in our environment was to compare the LegacyDN property from the root\MicrosoftExchangeV2 - Exchange_Mailbox class with the AD User property LegacyExchangeDN.&amp;#160; Following is the script used to iterate through our Exchange 2003 servers and generate an Excel report (CSV file).&lt;/p&gt; &lt;!-- Stylesheet link --&gt;&lt;br /&gt;&lt;link href="http://www.thecomplex.plus.com/styles/SyntaxHighlighter.css" rel="stylesheet" type="text/css"/&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- Code --&gt;&lt;br /&gt;&lt;DIV class=dp-highlighter id=hlDiv&gt;&lt;br /&gt;&lt;DIV class=bar&gt;&lt;/DIV&gt;&lt;br /&gt;&lt;OL class=dp-rb&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&lt;SPAN class=keyword&gt;function&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;Get-ExchangeInfo &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;{ &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BEGIN &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Start&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Get-Date&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Write-Host&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Script&amp;nbsp;Started:&amp;nbsp;$start`nProcessing"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;PROCESS &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBoxes&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Get-WmiObject&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-namespace&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;'root\MicrosoftExchangeV2'&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-class&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;'Exchange_MailBox'&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-computerName&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$_&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;sort&amp;nbsp;size&amp;nbsp;-desc&amp;nbsp;|&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Select&amp;nbsp;MailBoxDisplayName,&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ServerName,&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StorageGroupName,&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StoreName,&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Size,&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TotalItems,&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;legacyDN &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Write-Host&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Server:&amp;nbsp;$_"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;foreach&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;in&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBoxes&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$ldap&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"(LegacyExchangeDN={0})"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;-f&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;.legacyDN &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$User&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;Get-QADUser&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-SizeLimit&amp;nbsp;0&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-IncludeAllProperties&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-LdapFilter&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$ldap&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;` &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SELECT&amp;nbsp;SamAccountName,&amp;nbsp;Department,&amp;nbsp;DisplayName &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;psobject &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;SamAccountName&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$User&lt;/SPAN&gt;&lt;SPAN&gt;.SamAccountName &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;Department&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$User&lt;/SPAN&gt;&lt;SPAN&gt;.Department &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;DisplayName&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$User&lt;/SPAN&gt;&lt;SPAN&gt;.DisplayName &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;Size&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;.Size &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;TotalItems&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;.TotalItems &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;ServerName&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;.ServerName &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;StorageGroupName&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;.StorageGroupName &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;StoreName&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;.StoreName &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Add-Member&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;NoteProperty&amp;nbsp;LegacyDN&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$MailBox&lt;/SPAN&gt;&lt;SPAN&gt;.LegacyDN &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Write-Output&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$obj&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;END &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$End&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Get-Date&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Write-Host&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Script&amp;nbsp;completed:&amp;nbsp;$end"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Write-Host&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Total&amp;nbsp;Duration:&amp;nbsp;$($end-$Start).minute"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;}&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;Clear-Host &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Servers&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;'ms01'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN class=string&gt;'ms02'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN class=string&gt;'ms03'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN class=string&gt;'ms04'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN class=string&gt;'ms05'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;SPAN class=string&gt;'ms06'&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Servers&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;|&amp;nbsp;Get-ExchangeInfo&amp;nbsp;|&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Export-Csv&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;-path&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;'c:\ExchangeInfo.csv'&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;-noTypeInformation &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/DIV&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-1098925273085947745?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/1098925273085947745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=1098925273085947745' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/1098925273085947745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/1098925273085947745'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/01/powershell-and-exchange-2003.html' title='PowerShell and Exchange 2003'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-4703997638451806279</id><published>2009-01-13T14:29:00.007-05:00</published><updated>2009-01-13T15:13:19.981-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>PowerShell and XML</title><content type='html'>&lt;div&gt;&lt;p&gt;After my last post, I thought it might be a good idea to spend a little more time explaining the XML capabilities of PowerShell. I had 2 people ask for clarification on it so I obviously didn't give it the attention it deserved! Following are a few examples of what can be done with the XML type in PowerShell.&lt;/p&gt;&lt;p&gt;The file that we will be using is from a Microsoft Baseline Security Analysis. To follow along with the examples, it would be beneficial if you had a similar file. You can use &lt;a href="http://cid-402d45d3ec051d44.skydrive.live.com/self.aspx/Public/SampleMBSA.xml" target="_blank"&gt;this sample&lt;/a&gt;. It looks something like this. &lt;/p&gt;&lt;p&gt;&lt;a href="http://2.bp.blogspot.com/_GKoVmIIMvWw/SWzyyleVcvI/AAAAAAAAAII/nfGKeyxppn4/s1600-h/xml.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5290870613120217842" style="WIDTH: 183px; CURSOR: hand; HEIGHT: 400px" alt="" src="http://2.bp.blogspot.com/_GKoVmIIMvWw/SWzyyleVcvI/AAAAAAAAAII/nfGKeyxppn4/s400/xml.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The first thing we need to do is explicitly cast it as an XML file:&lt;br /&gt;[&lt;span style="color:#004080;"&gt;XML&lt;/span&gt;]&lt;span style="color:#800080;"&gt;$ScanResult&lt;/span&gt; = Get-Content 'c:\sampleMBSA.xml'&lt;/p&gt;&lt;p&gt;Now that we have the XML file, lets see what we can do with it.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;strong&gt;Get the Server (Machine) name:&lt;/strong&gt;&lt;br /&gt;PS&gt; $File.SecScan.Machine&lt;br /&gt;PS&gt; Test-VP01&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Get the IP address:&lt;br /&gt;&lt;/strong&gt;PS&gt; $file.SecScan.IP&lt;br /&gt;PS&gt; 12.345.67.890&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;What 3 areas were scanned:&lt;/strong&gt;&lt;br /&gt;PS&gt; $file.SecScan.Check  Select Name&lt;br /&gt;&lt;u&gt;Name &lt;/u&gt;&lt;br /&gt;Office Security Updates&lt;br /&gt;SDK Components Security Updates&lt;br /&gt;Windows Security Updates&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;See the complete list of updates (installed or not) for Office Security Updates:&lt;br /&gt;&lt;/strong&gt;Note that we had 3 areas that were scanned, we are looking at the first one, so we start with [0] index.&lt;br /&gt;PS&gt; $file.SecScan.Check[0].Detail.UpdateData  Select Title&lt;br /&gt;&lt;u&gt;Title&lt;/u&gt;&lt;br /&gt;Office 2003 Service Pack 2 for Proofing Tools&lt;br /&gt;Security Update for Office 2003 (KB920813)&lt;br /&gt;Security Update for Excel 2003 (KB925257)&lt;br /&gt;Security Update for Word 2003 (KB923094)&lt;br /&gt;Visio 2003 Service Pack 2&lt;br /&gt;Security Update for Office 2003 (KB924424)&lt;br /&gt;....&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;See the complete list of updates that need installed for Office Security Updates:&lt;br /&gt;&lt;/strong&gt;PS&gt; $file.SecScan.Check[0].Detail.UpdateData `&lt;br /&gt;    &gt; Where{$_.IsInstalled -eq $false} `&lt;br /&gt;    &gt; Select Title&lt;br /&gt;Office 2003 Service Pack 2&lt;br /&gt;Security Update for Office 2003 (KB954478)&lt;br /&gt;Security Update for Office 2003 (KB923272)&lt;br /&gt;Security Update for PowerPoint 2003 (KB9230&lt;br /&gt;Security Update for Microsoft Office Excel&lt;br /&gt;Security Update for Office 2003 (KB936048)&lt;br /&gt;Security Update for Excel 2003 (KB940602)&lt;br /&gt;Outlook Live 2003 Service Pack 2&lt;br /&gt;Project 2003 Service Pack 2&lt;br /&gt;Security Update for Office 2003 (KB924424)&lt;br /&gt;...&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;See the list of critical updates that need to be installed for Office Security Updates:&lt;br /&gt;&lt;/strong&gt;PS&gt; $file.SecScan.Check[0].Detail.UpdateData `&lt;br /&gt;     &gt; where{$_.IsInstalled -eq $false -and $_.Severity -eq 4} `&lt;br /&gt;     &gt; select Title, @{name="Severity";Expression={"Critical"}}&lt;br /&gt;&lt;u&gt;Severity&lt;/u&gt; &lt;u&gt;Title&lt;/u&gt;&lt;br /&gt;Critical Security Update for Access Snapshot Viewer 2003 (KB955439)&lt;br /&gt;Critical Security Update for Microsoft Office Outlook 2003 (KB945432) &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Hopefully, this clarifies some of possibilities with XML and PowerShell.&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-4703997638451806279?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/4703997638451806279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=4703997638451806279' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4703997638451806279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4703997638451806279'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/01/powershell-and-xml.html' title='PowerShell and XML'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GKoVmIIMvWw/SWzyyleVcvI/AAAAAAAAAII/nfGKeyxppn4/s72-c/xml.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-4532715222448576756</id><published>2009-01-10T12:06:00.004-05:00</published><updated>2009-01-10T12:12:11.479-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Excel'/><category scheme='http://www.blogger.com/atom/ns#' term='Regular Expressions'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='MBSA'/><title type='text'>PowerShell &amp; MBSA logs</title><content type='html'>Was recently asked if I could iterate over a directory containing *.MBSA files from a scheduled run of the &lt;a href="http://technet.microsoft.com/en-us/security/cc184924.aspx"&gt;Microsoft Baseline Security Analyzer&lt;/a&gt;. These *.MBSA files are XML files that contain some basic machine information as well as the number of security and service packs that are required to get the machine to a secure state. The GUI shows the information as follows: &lt;a href="http://3.bp.blogspot.com/_GKoVmIIMvWw/SWjM85F9h_I/AAAAAAAAAHQ/vrbB9K2svVM/s1600-h/mbsa2.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5289703108836689906" style="width: 400px; cursor: hand; height: 300px" alt="" src="http://3.bp.blogspot.com/_GKoVmIIMvWw/SWjM85F9h_I/AAAAAAAAAHQ/vrbB9K2svVM/s400/mbsa2.png" border="0" /&gt;&lt;/a&gt; The specifics of the request that I received were to grab the count of the following updates per machine (circled in the picture above):   &lt;ul&gt;   &lt;li&gt;SDK Components Security Updates &lt;/li&gt;   &lt;li&gt;SQL Server Security Updates &lt;/li&gt;   &lt;li&gt;Windows Security Updates &lt;/li&gt;   &lt;li&gt;BizTalk Server Security Updates &lt;/li&gt;   &lt;li&gt;Exchange Security Updates &lt;/li&gt;   &lt;li&gt;Office Security Updates &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;What a great opportunity to use PowerShell's XML capabilities! The following script iterates over each file in the directory, parses the file and looks for the count. This information is dynamically entered into an Excel spreadsheet.&lt;/p&gt;  &lt;DIV class=dp-highlighter id=hlDiv&gt; &lt;DIV class=bar&gt;&lt;/DIV&gt; &lt;OL class=dp-rb&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;SPAN class=comment&gt;#&amp;nbsp;grab&amp;nbsp;our&amp;nbsp;XML&amp;nbsp;files &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$files&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Get-ChildItem&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;-path&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;'C:\SecurityScans'&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=comment&gt;#&amp;nbsp;Get&amp;nbsp;Excel&amp;nbsp;ready &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Excel&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;New-Object&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;-comobject&amp;nbsp;Excel.Application &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Excel&lt;/SPAN&gt;&lt;SPAN&gt;.visible&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$True&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Workbook&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Excel&lt;/SPAN&gt;&lt;SPAN&gt;.Workbooks.Add() &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Workbook&lt;/SPAN&gt;&lt;SPAN&gt;.Worksheets.Item(1) &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=comment&gt;#&amp;nbsp;Create&amp;nbsp;our&amp;nbsp;column&amp;nbsp;headers &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(1,1)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Server&amp;nbsp;name"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(1,2)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"SDK&amp;nbsp;Components&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(1,3)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"SQL&amp;nbsp;Server&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(1,4)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Windows&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(1,5)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"BizTalk&amp;nbsp;Server&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(1,6)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Exchange&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(1,7)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Office&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=comment&gt;#&amp;nbsp;Add&amp;nbsp;a&amp;nbsp;little&amp;nbsp;formatting &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Info&lt;/SPAN&gt;&lt;SPAN&gt;.UsedRange &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Interior.ColorIndex&amp;nbsp;=&amp;nbsp;19 &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Font.ColorIndex&amp;nbsp;=&amp;nbsp;11 &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Font.Bold&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$True&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;2 &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=comment&gt;#&amp;nbsp;iterate&amp;nbsp;over&amp;nbsp;each&amp;nbsp;.mbsa&amp;nbsp;file &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;foreach&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$file&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;in&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$files&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;{ &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[XML]&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$ScanResult&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=builtin&gt;Get-Content&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$file&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Scanned&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$ScanResult&lt;/SPAN&gt;&lt;SPAN&gt;.SecScan.Check&amp;nbsp;|&amp;nbsp;select&amp;nbsp;Name,&amp;nbsp;Advice &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Server&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$ScanResult&lt;/SPAN&gt;&lt;SPAN&gt;.SecScan.Machine &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;foreach&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Scan&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;in&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Scanned&lt;/SPAN&gt;&lt;SPAN&gt;) &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=comment&gt;#&amp;nbsp;if&amp;nbsp;Advice&amp;nbsp;doesn't&amp;nbsp;start&amp;nbsp;with&amp;nbsp;a&amp;nbsp;numeric&amp;nbsp;value&amp;nbsp;then&amp;nbsp;set&amp;nbsp;it&amp;nbsp;equal&amp;nbsp;to&amp;nbsp;0 &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;if&lt;/SPAN&gt;&lt;SPAN&gt;(&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Scan&lt;/SPAN&gt;&lt;SPAN&gt;.Advice&amp;nbsp;-match&amp;nbsp;'^(?&amp;lt;Cnt&amp;gt;[0-9]*)'){&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$matches&lt;/SPAN&gt;&lt;SPAN&gt;.cnt}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;else&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;=0} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;1)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Server&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=keyword&gt;switch&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Scan&lt;/SPAN&gt;&lt;SPAN&gt;.Name)&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"SDK&amp;nbsp;Components&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;2)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;;break} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"SQL&amp;nbsp;Server&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;3)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;;break} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Windows&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;4)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;;break} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"BizTalk&amp;nbsp;Server&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;5)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;;break} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Exchange&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;6)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;;break} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=string&gt;"Office&amp;nbsp;Security&amp;nbsp;Updates"&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Style&lt;/SPAN&gt;&lt;SPAN&gt;.Cells.Item(&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;,&amp;nbsp;7)&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$Advice&lt;/SPAN&gt;&lt;SPAN&gt;;break} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=alt&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=variable&gt;$intRow&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;+&amp;nbsp;1 &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt; &lt;LI class=""&gt;&lt;SPAN&gt;}&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/DIV&gt; &lt;p&gt;The result is a nicely formatted Excel spreadsheet that has the total number of updates. &lt;a href="http://1.bp.blogspot.com/_GKoVmIIMvWw/SWjQPLqi9pI/AAAAAAAAAHY/YnW8NBgtLS8/s1600-h/MBSAExcel.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5289706721594504850" style="width: 424px; cursor: hand; height: 82px" alt="" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/SWjQPLqi9pI/AAAAAAAAAHY/YnW8NBgtLS8/s400/MBSAExcel.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This script hopefully demonstrates a how to use few different PowerShell features: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Creating a COM object &lt;/li&gt;    &lt;li&gt;Using Regular Expressions &lt;/li&gt;    &lt;li&gt;Using [XML] type&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Enjoy&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-4532715222448576756?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/4532715222448576756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=4532715222448576756' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4532715222448576756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/4532715222448576756'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/01/powershell-mbsa-logs.html' title='PowerShell &amp;amp; MBSA logs'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_GKoVmIIMvWw/SWjM85F9h_I/AAAAAAAAAHQ/vrbB9K2svVM/s72-c/mbsa2.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-5271314027914033027</id><published>2009-01-07T13:46:00.004-05:00</published><updated>2009-01-07T14:35:34.935-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='PrimalForms'/><title type='text'>Verify PSSnapin (Script vs PrimalForms)</title><content type='html'>When running a script from the console or the various IDE's, you can check for a specific snap-in with the #requires statement. See ALEKSANDAR's &lt;a href="http://powershellers.blogspot.com/2008/06/requires-statement.html" target="_blank"&gt;blog post&lt;/a&gt; for the complete description.&lt;br /&gt;&lt;br /&gt;When running a script as a winform (like through PrimalForms), you may need to attack from a different angle. It may be necessary to capture the fact that a particular snap-in is not installed and present it in the GUI or a messagebox. For this the following may be a better approach:&lt;br /&gt;&lt;pre&gt;&lt;span style="color:#800080;"&gt;$snapin&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;Quest.ActiveRoles.ADManagement&lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;if&lt;/span&gt;&lt;span style="color:#000000;"&gt; ((&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;color:#5f9ea0;" &gt;get-pssnapin&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-name&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$snapin&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="FONT-STYLE: italic;color:#5f9ea0;" &gt;-erroraction&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;silentlycontinue&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#ff0000;"&gt;-eq&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;$null&lt;/span&gt;&lt;span style="color:#000000;"&gt;)&lt;br /&gt;{&lt;br /&gt;    $statusBar1.text = &lt;/span&gt;&lt;span style="color:#800000;"&gt;"&lt;/span&gt;&lt;span style="color:#800000;"&gt;$snapin is not installed&lt;/span&gt;&lt;span style="color:#800000;"&gt;" &lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;Enjoy!&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-5271314027914033027?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/5271314027914033027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=5271314027914033027' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5271314027914033027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/5271314027914033027'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/01/verify-pssnapin-script-vs-primalforms.html' title='Verify PSSnapin (Script vs PrimalForms)'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-6652424683206403386</id><published>2009-01-05T16:53:00.016-05:00</published><updated>2009-01-05T18:09:23.704-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AD Commandlets'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='PrimalForms'/><title type='text'>PrimalForms &amp; PowerShell AD Tool</title><content type='html'>We are in the middle of a file migration and our policy dictates that as our file shares are moved they need to have the following structure:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Access.Neurosurgery.Public.Change&lt;/li&gt;&lt;li&gt;Access.Neurosurgery.Public.Full&lt;/li&gt;&lt;li&gt;Access.Neurosurgery.Public.Read&lt;/li&gt;&lt;/ul&gt;So every time a new group is requested, the admin has to create 3 distinct groups, assign the scope &amp;amp; type and add the "Managed By" username.  Not hard, but time consuming.  This looked like a great candidate for &lt;a href="http://www.primaltools.com/freetools/"&gt;PrimalForms&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;The UI is pretty straight forward.  It asks for the group name, the scope and the owner.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GKoVmIIMvWw/SWKD5UOn2zI/AAAAAAAAAGg/kyImpmRBxCs/s1600-h/ADGroup1.PNG"&gt;&lt;img style="cursor: pointer; width: 400px; height: 244px;" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/SWKD5UOn2zI/AAAAAAAAAGg/kyImpmRBxCs/s400/ADGroup1.PNG" alt="" id="BLOGGER_PHOTO_ID_5287933933192207154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;When the Verify Group button is pressed, we perform a few checks before we create the groups.  First we check to see if there are similar groups.  In this case, the panel is now visible and the status bar indicates that like groups already exist.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GKoVmIIMvWw/SWKEln5IY4I/AAAAAAAAAGo/rjkVi4TD8oA/s1600-h/ADGroup2.PNG"&gt;&lt;img style="cursor: pointer; width: 400px; height: 248px;" src="http://3.bp.blogspot.com/_GKoVmIIMvWw/SWKEln5IY4I/AAAAAAAAAGo/rjkVi4TD8oA/s400/ADGroup2.PNG" alt="" id="BLOGGER_PHOTO_ID_5287934694385017730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Once we verify the group name, we need to verify that the entered group owner is in fact a legitimate AD object.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GKoVmIIMvWw/SWKFTIHKWHI/AAAAAAAAAGw/iPyIl67Ocg8/s1600-h/ADGroup3.PNG"&gt;&lt;img style="cursor: pointer; width: 400px; height: 244px;" src="http://3.bp.blogspot.com/_GKoVmIIMvWw/SWKFTIHKWHI/AAAAAAAAAGw/iPyIl67Ocg8/s400/ADGroup3.PNG" alt="" id="BLOGGER_PHOTO_ID_5287935476127914098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In this case, the user is not valid.  Once all the data is verified, we give the user one last chance to cancel before the groups are created.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GKoVmIIMvWw/SWKF13_V1XI/AAAAAAAAAHA/9G-xvlQxDB4/s1600-h/ADGroup5.PNG"&gt;&lt;img style="cursor: pointer; width: 400px; height: 247px;" src="http://1.bp.blogspot.com/_GKoVmIIMvWw/SWKF13_V1XI/AAAAAAAAAHA/9G-xvlQxDB4/s400/ADGroup5.PNG" alt="" id="BLOGGER_PHOTO_ID_5287936073095566706" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;That's about it!&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8203699536544490940-6652424683206403386?l=fatbeards.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://fatbeards.blogspot.com/feeds/6652424683206403386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8203699536544490940&amp;postID=6652424683206403386' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6652424683206403386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8203699536544490940/posts/default/6652424683206403386'/><link rel='alternate' type='text/html' href='http://fatbeards.blogspot.com/2009/01/primalforms-powershell-ad-tool.html' title='PrimalForms &amp; PowerShell AD Tool'/><author><name>Wes Stahler</name><uri>http://www.blogger.com/profile/11429234705232767882</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_GKoVmIIMvWw/SWKD5UOn2zI/AAAAAAAAAGg/kyImpmRBxCs/s72-c/ADGroup1.PNG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8203699536544490940.post-529303090372093207</id><published>2009-01-03T14:33:00.006-05:00</published><updated>2009-01-04T00:11:09.009-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><category scheme='http://www.blogger.com/atom/ns#' term='Project Euler'/><title type='text'>Project Euler and PowerShell - Problem 14</title><content type='html'>The following iterative sequence is defined for the set of positive integers:&lt;br /&gt;&lt;br /&gt;n -&gt; n/2 (n is even)&lt;br /&gt;n -&gt; 3n + 1 (n is odd)&lt;br /&gt;&lt;br /&gt;Using the rule above and starting with 13, we generate the following sequence:&lt;br /&gt;&lt;br /&gt;13 -&gt; 40 -&gt; 20 -&gt; 10 -&gt; 5 -&gt; 16 -&gt; 8 -&gt; 4 -&gt; 2 -&gt; 1&lt;br /&gt;&lt;br /&gt;It can be seen that this sequence (starting at 13 and finishing at 1) contains 10 terms. Although it has not been proved yet (Collatz Problem), it is thought that all starting numbers finish at 1.&lt;br /&gt;&lt;br /&gt;Which starting number, under one million, produces the longest chain?&lt;br /&gt;&lt;br /&gt;NOTE: Once the chain starts the terms are allowed to go above one million.&lt;br /&gt;&lt;pre&gt;&lt;span style="color:#800080;"&gt;$limit&lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt;1000000&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;span style="color:#800080;"&gt;$max&lt;/span&gt;&lt;span style="color:#ff0000;"&gt;=&lt;/span&gt;&lt;span style="color:#800080;"&gt;$longest&lt;/span&gt;&lt;span style="color:#000000;"&gt;=&l
