<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Kirk Jackson's Page of Words - PowerShell</title>
    <link>http://pageofwords.com/blog/</link>
    <description>Run the ink across this page of words</description>
    <language>en-us</language>
    <copyright>Kirk Jackson</copyright>
    <lastBuildDate>Thu, 05 Feb 2009 21:32:39 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 1.9.6264.0</generator>
    <managingEditor>kirkj@paradise.net.nz</managingEditor>
    <webMaster>kirkj@paradise.net.nz</webMaster>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=084eff23-1f74-442a-ac7a-78fefda83b5c</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,084eff23-1f74-442a-ac7a-78fefda83b5c.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,084eff23-1f74-442a-ac7a-78fefda83b5c.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=084eff23-1f74-442a-ac7a-78fefda83b5c</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Oisín Grehan has a good list of the new cmdlets in PowerShell 2 (currently in
CTP3 and the Windows 7 beta):
</p>
        <p>
          <a title="http://www.nivot.org/2009/02/04/DifferencesBetweenPowerShell10RTMAndPowershell20CTP3Win7Beta.aspx" href="http://www.nivot.org/2009/02/04/DifferencesBetweenPowerShell10RTMAndPowershell20CTP3Win7Beta.aspx">http://www.nivot.org/2009/02/04/DifferencesBetweenPowerShell10RTMAndPowershell20CTP3Win7Beta.aspx</a>
        </p>
        <p>
It's cool having a list of all 106 new cmdlets, including such useful ones as:
</p>
        <ul>
          <li>
Test-Connection (ping)</li>
          <li>
ConvertFrom/To-CSV</li>
          <li>
Start/Stop/etc Jobs in the background</li>
          <li>
Get-Random (useful for drawing prize winners at user groups!)</li>
          <li>
ConvertTo-Xml</li>
        </ul>
        <p>
PowerShell 2 has a bunch of cool new features, and feels like it's getting real close
now :)
</p>
        <p>
Kirk
</p>
        <img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=084eff23-1f74-442a-ac7a-78fefda83b5c" />
      </body>
      <title>PowerShell - new additions in v2</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,084eff23-1f74-442a-ac7a-78fefda83b5c.aspx</guid>
      <link>http://pageofwords.com/blog/2009/02/05/PowerShellNewAdditionsInV2.aspx</link>
      <pubDate>Thu, 05 Feb 2009 21:32:39 GMT</pubDate>
      <description>&lt;p&gt;
Ois&amp;#237;n Grehan has a good list of the new cmdlets in PowerShell 2 (currently in
CTP3 and the Windows 7 beta):
&lt;/p&gt;
&lt;p&gt;
&lt;a title="http://www.nivot.org/2009/02/04/DifferencesBetweenPowerShell10RTMAndPowershell20CTP3Win7Beta.aspx" href="http://www.nivot.org/2009/02/04/DifferencesBetweenPowerShell10RTMAndPowershell20CTP3Win7Beta.aspx"&gt;http://www.nivot.org/2009/02/04/DifferencesBetweenPowerShell10RTMAndPowershell20CTP3Win7Beta.aspx&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
It's cool having a list of all 106 new cmdlets, including such useful ones as:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Test-Connection (ping)&lt;/li&gt;
&lt;li&gt;
ConvertFrom/To-CSV&lt;/li&gt;
&lt;li&gt;
Start/Stop/etc Jobs in the background&lt;/li&gt;
&lt;li&gt;
Get-Random (useful for drawing prize winners at user groups!)&lt;/li&gt;
&lt;li&gt;
ConvertTo-Xml&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
PowerShell 2 has a bunch of cool new features, and feels like it's getting real close
now :)
&lt;/p&gt;
&lt;p&gt;
Kirk
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=084eff23-1f74-442a-ac7a-78fefda83b5c" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,084eff23-1f74-442a-ac7a-78fefda83b5c.aspx</comments>
      <category>PowerShell</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Well that's good news: <a href="http://blogs.technet.com/server_core/archive/2008/11/13/server-core-changes-in-windows-server-2008-r2.aspx">Server
Core changes in Windows Server 2008 R2</a></p>
        <p>
Server Core will soon allow ASP.NET and PowerShell to be installed as options. They've
partitioned the .NET framework and only install those parts that are needed (presumably
to remove those parts that depend on the UI). I haven't seen any details, but I expect
that things in the System.Drawing space may not be there either.
</p>
        <p>
This is good news for people with a farm of web servers, and also for those that want
better management of their server core installs.
</p>
        <p>
Kirk
</p>
        <img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325" />
      </body>
      <title>Server Core 2008 R2 - Will include ASP.NET and PowerShell</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325.aspx</guid>
      <link>http://pageofwords.com/blog/2008/11/14/ServerCore2008R2WillIncludeASPNETAndPowerShell.aspx</link>
      <pubDate>Fri, 14 Nov 2008 20:45:06 GMT</pubDate>
      <description>&lt;p&gt;
Well that's good news: &lt;a href="http://blogs.technet.com/server_core/archive/2008/11/13/server-core-changes-in-windows-server-2008-r2.aspx"&gt;Server
Core changes in Windows Server 2008 R2&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Server Core will soon allow ASP.NET and PowerShell to be installed as options. They've
partitioned the .NET framework and only install those parts that are needed (presumably
to remove those parts that depend on the UI). I haven't seen any details, but I expect
that things in the System.Drawing space may not be there either.
&lt;/p&gt;
&lt;p&gt;
This is good news for people with a farm of web servers, and also for those that want
better management of their server core installs.
&lt;/p&gt;
&lt;p&gt;
Kirk
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,5fd3cb68-9da4-4a4f-9c5c-f3f5f5f45325.aspx</comments>
      <category>.NET;PowerShell</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=97f337d5-f24c-4280-80df-ff9cda8a7146</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,97f337d5-f24c-4280-80df-ff9cda8a7146.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,97f337d5-f24c-4280-80df-ff9cda8a7146.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=97f337d5-f24c-4280-80df-ff9cda8a7146</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I talked about this briefly last week -- if you want to administer Hyper-V using PowerShell,
what options do you have?
</p>
        <p>
          <strong>WMI</strong>
        </p>
        <p>
Hyper-V proffers some functionality through WMI classes in the “root\virtualization”
namespace. You can access the raw WMI classes from PowerShell using examples like
in <a href="http://pageofwords.com/blog/2008/09/09/PowerShellWMITranscript.aspx">my
talk</a>, or you can use the great library James O'Neill has uploaded to CodePlex: <a href="http://www.codeplex.com/PSHyperv">PowerShell
Management Library for Hyper-V</a></p>
        <p>
Ben Pearce is doing a series on <a href="http://blogs.technet.com/benp/archive/2008/08/11/scripting-hyper-v-with-wmi-and-powershell-part-1-introduction-querying-state.aspx">scripting
Hyper-V with WMI</a> which you should definitely check out.
</p>
        <p>
          <strong>System Centre Virtual Machine Manager 2008</strong>
        </p>
        <p>
          <a href="http://www.microsoft.com/systemcenter/virtualmachinemanager/en/us/default.aspx">SCVMM</a> is
a new product that will be releasing soon. It offers a unified management interface
and set of services for managing a datacenter full of virtual machines. It is an additional
product purchase, and so not everyone will have it.
</p>
        <p>
I haven't used them, but apparently SCVMM's PowerShell cmdlets are a lot more natural
to use than WMI. Further information about the PowerShell interface is available in
this <a href="http://technet.microsoft.com/en-nz/library/bb740740(en-us).aspx">Scripting
Guide</a>.
</p>
        <p>
 
</p>
        <p>
Ultimately, you'll need to evaluate both approaches to see which one fits. WMI-based
scripts will probably be usable in more situations, but SCVMM scripts will be easier
to author and maintain.
</p>
        <p>
Kirk
</p>
        <img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=97f337d5-f24c-4280-80df-ff9cda8a7146" />
      </body>
      <title>Hyper-V administration in PowerShell - WMI or cmdlets?</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,97f337d5-f24c-4280-80df-ff9cda8a7146.aspx</guid>
      <link>http://pageofwords.com/blog/2008/09/09/HyperVAdministrationInPowerShellWMIOrCmdlets.aspx</link>
      <pubDate>Tue, 09 Sep 2008 12:12:57 GMT</pubDate>
      <description>&lt;p&gt;
I talked about this briefly last week -- if you want to administer Hyper-V using PowerShell,
what options do you have?
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;WMI&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Hyper-V proffers some functionality through WMI classes in the “root\virtualization”
namespace. You can access the raw WMI classes from PowerShell using examples like
in &lt;a href="http://pageofwords.com/blog/2008/09/09/PowerShellWMITranscript.aspx"&gt;my
talk&lt;/a&gt;, or you can use the great library James O'Neill has uploaded to CodePlex: &lt;a href="http://www.codeplex.com/PSHyperv"&gt;PowerShell
Management&amp;nbsp;Library for Hyper-V&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Ben Pearce is doing a series on &lt;a href="http://blogs.technet.com/benp/archive/2008/08/11/scripting-hyper-v-with-wmi-and-powershell-part-1-introduction-querying-state.aspx"&gt;scripting
Hyper-V with WMI&lt;/a&gt; which you should definitely check out.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;System Centre Virtual Machine Manager 2008&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.microsoft.com/systemcenter/virtualmachinemanager/en/us/default.aspx"&gt;SCVMM&lt;/a&gt; is
a new product that will be releasing soon. It offers a unified management interface
and set of services for managing a datacenter full of virtual machines. It is an additional
product purchase, and so not everyone will have it.
&lt;/p&gt;
&lt;p&gt;
I haven't used them, but apparently SCVMM's PowerShell cmdlets are a lot more natural
to use than WMI. Further information about the PowerShell interface is available in
this &lt;a href="http://technet.microsoft.com/en-nz/library/bb740740(en-us).aspx"&gt;Scripting
Guide&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Ultimately, you'll need to evaluate both approaches to see which one fits. WMI-based
scripts will probably be usable in more situations, but SCVMM scripts will be easier
to author and maintain.
&lt;/p&gt;
&lt;p&gt;
Kirk
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=97f337d5-f24c-4280-80df-ff9cda8a7146" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,97f337d5-f24c-4280-80df-ff9cda8a7146.aspx</comments>
      <category>PowerShell;TechEd</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=8eb33e5e-0570-4675-a778-84d4e2f0a289</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,8eb33e5e-0570-4675-a778-84d4e2f0a289.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,8eb33e5e-0570-4675-a778-84d4e2f0a289.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=8eb33e5e-0570-4675-a778-84d4e2f0a289</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
As <a href="http://pageofwords.com/blog/2008/09/03/PowerShellTalkAtTechEdSVR316.aspx">promised</a>,
here's the transcript of the PowerShell commands I used in my talk:
</p>
        <p>
          <a href="http://pageofwords.com/blog/content/binary/TechEdTranscript.txt">TechEdTranscript.txt
(107.64 KB)</a>
        </p>
        <p>
The bulkservers scripts that I used were from Ben Pearce's blog: <a href="http://blogs.technet.com/benp/archive/2008/06/12/tech-ed-2008-demo-2-administering-servers-in-bulk.aspx">Administering
Servers in Bulk</a>. I've uploaded my versions of the scripts here: <a href="http://pageofwords.com/blog/content/binary/BulkServerScripts.zip">BulkServerScripts.zip</a></p>
        <p>
Following is a synopsis of the commands I used in the talk.
</p>
        <p>
Get a list of all classes in the CIMV2 namespace:
</p>
        <p>
&gt; get-wmiobject -namespace "root\cimv2" -list
</p>
        <p>
Get a list of all disks on a remote machine:
</p>
        <p>
&gt; gwmi -class win32_logicaldisk -computer columbus
</p>
        <p>
Update the Volume Name of a disk. Note that often when making changes to WMI properties,
you need to Put() the object to set your changes back on the original machine:
</p>
        <p>
&gt; $disks[0].VolumeName = "Kirks disk"<br />
&gt; $disks[0].Put()
</p>
        <p>
List hotfixes applied to a machine:
</p>
        <p>
&gt; gwmi win32_quickfixengineering | format-table hotfixid
</p>
        <p>
Get a representation of the running OS. You can shutdown, reboot etc:
</p>
        <p>
&gt; $os = gwmi win32_operatingsystem
</p>
        <p>
Get all the network adapters on a machine:
</p>
        <p>
&gt; $nics = gwmi win32_networkadapterconfiguration
</p>
        <p>
You can update the IP addresses, netmasks etc:
</p>
        <p>
&gt; $mynic.enablestatic($newip, $newmask)
</p>
        <p>
Get a list of the Hyper-V virtual machines:
</p>
        <p>
$vms = Gwmi –namespace “root\virtualization” –class msvm_computersystem
</p>
        <p>
Set one of the virtual machines to the running state:
</p>
        <p>
&gt; $VM.RequestStateChange(2)
</p>
        <p>
I hope that these examples show you the variety and power of things you can manipulate
using PowerShell over WMI. You can access almost every physical or logical device that
is connected to your computer (or another computer on your network), as well as administer
many different software products.
</p>
        <p>
Kirk<br /><br />
 
</p>
        <img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=8eb33e5e-0570-4675-a778-84d4e2f0a289" />
      </body>
      <title>PowerShell / WMI Transcript</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,8eb33e5e-0570-4675-a778-84d4e2f0a289.aspx</guid>
      <link>http://pageofwords.com/blog/2008/09/09/PowerShellWMITranscript.aspx</link>
      <pubDate>Tue, 09 Sep 2008 11:52:50 GMT</pubDate>
      <description>&lt;p&gt;
As &lt;a href="http://pageofwords.com/blog/2008/09/03/PowerShellTalkAtTechEdSVR316.aspx"&gt;promised&lt;/a&gt;,
here's the transcript of the PowerShell commands I used in my talk:
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://pageofwords.com/blog/content/binary/TechEdTranscript.txt"&gt;TechEdTranscript.txt
(107.64 KB)&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
The bulkservers scripts that I used were from Ben Pearce's blog: &lt;a href="http://blogs.technet.com/benp/archive/2008/06/12/tech-ed-2008-demo-2-administering-servers-in-bulk.aspx"&gt;Administering
Servers in Bulk&lt;/a&gt;. I've uploaded my versions of the scripts here: &lt;a href="http://pageofwords.com/blog/content/binary/BulkServerScripts.zip"&gt;BulkServerScripts.zip&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Following is a synopsis of the commands I used in the talk.
&lt;/p&gt;
&lt;p&gt;
Get a list of all classes in the CIMV2 namespace:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; get-wmiobject -namespace "root\cimv2" -list
&lt;/p&gt;
&lt;p&gt;
Get a list of all disks on a remote machine:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; gwmi -class win32_logicaldisk -computer columbus
&lt;/p&gt;
&lt;p&gt;
Update the Volume Name of a disk. Note that often when making changes to WMI properties,
you need to Put() the object to set your changes back on the original machine:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; $disks[0].VolumeName = "Kirks disk"&lt;br&gt;
&amp;gt; $disks[0].Put()
&lt;/p&gt;
&lt;p&gt;
List hotfixes applied to a machine:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; gwmi win32_quickfixengineering | format-table hotfixid
&lt;/p&gt;
&lt;p&gt;
Get a representation of the running OS. You can shutdown, reboot etc:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; $os = gwmi win32_operatingsystem
&lt;/p&gt;
&lt;p&gt;
Get all the network adapters on a machine:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; $nics = gwmi win32_networkadapterconfiguration
&lt;/p&gt;
&lt;p&gt;
You can update the IP addresses, netmasks etc:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; $mynic.enablestatic($newip, $newmask)
&lt;/p&gt;
&lt;p&gt;
Get a list of the&amp;nbsp;Hyper-V virtual machines:
&lt;/p&gt;
&lt;p&gt;
$vms = Gwmi –namespace “root\virtualization” –class msvm_computersystem
&lt;/p&gt;
&lt;p&gt;
Set one of the virtual machines to the running state:
&lt;/p&gt;
&lt;p&gt;
&amp;gt; $VM.RequestStateChange(2)
&lt;/p&gt;
&lt;p&gt;
I hope that these examples show you the variety and power of things you can manipulate
using PowerShell over WMI. You can access almost every physical or logical device&amp;nbsp;that
is connected to your computer (or another computer on your network), as well as administer
many different software products.
&lt;/p&gt;
&lt;p&gt;
Kirk&lt;br&gt;
&lt;br&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=8eb33e5e-0570-4675-a778-84d4e2f0a289" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,8eb33e5e-0570-4675-a778-84d4e2f0a289.aspx</comments>
      <category>PowerShell;TechEd</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=57834647-a0f6-4fc1-86fb-9b2b8077b500</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,57834647-a0f6-4fc1-86fb-9b2b8077b500.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,57834647-a0f6-4fc1-86fb-9b2b8077b500.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=57834647-a0f6-4fc1-86fb-9b2b8077b500</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">Cool - <a target="_blank" href="http://igorshare.wordpress.com">Igor
Moochnick</a> has announced the <a target="_blank" href="http://igorshare.wordpress.com/2008/04/06/pash-cross-platform-powershell-is-out-in-the-wild-announcement/">release
of pash</a>, an open source implementation of PowerShell that runs on Mono or Microsoft's
CLR.<br /><br />
I will be interested in seeing the uptake of Posh among Unix developers -- Powershell
is more of an evolution of the standard Unix scripting environments such as bash,
perl, and tcl, so should feel right at home.<br /><br /><br /><p></p><img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=57834647-a0f6-4fc1-86fb-9b2b8077b500" /></body>
      <title>Pash - Powershell implementation for Mac, Linux...</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,57834647-a0f6-4fc1-86fb-9b2b8077b500.aspx</guid>
      <link>http://pageofwords.com/blog/2008/04/08/PashPowershellImplementationForMacLinux.aspx</link>
      <pubDate>Tue, 08 Apr 2008 09:22:20 GMT</pubDate>
      <description>Cool - &lt;a target="_blank" href="http://igorshare.wordpress.com"&gt;Igor Moochnick&lt;/a&gt; has
announced the &lt;a target="_blank" href="http://igorshare.wordpress.com/2008/04/06/pash-cross-platform-powershell-is-out-in-the-wild-announcement/"&gt;release
of pash&lt;/a&gt;, an open source implementation of PowerShell that runs on Mono or Microsoft's
CLR.&lt;br&gt;
&lt;br&gt;
I will be interested in seeing the uptake of Posh among Unix developers -- Powershell
is more of an evolution of the standard Unix scripting environments such as bash,
perl, and tcl, so should feel right at home.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=57834647-a0f6-4fc1-86fb-9b2b8077b500" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,57834647-a0f6-4fc1-86fb-9b2b8077b500.aspx</comments>
      <category>PowerShell</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=c481f8b7-5284-4b9a-90ab-c82d8d12fa96</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,c481f8b7-5284-4b9a-90ab-c82d8d12fa96.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,c481f8b7-5284-4b9a-90ab-c82d8d12fa96.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=c481f8b7-5284-4b9a-90ab-c82d8d12fa96</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">The Australian Windows Server team have
done a good job with the new comic strip <a href="http://www.microsoft.com/australia/servers/WS2008/">Server
vs Client</a>:<br /><br /><img src="http://www.microsoft.com/australia/servers/ws2008/cartoon/03-powershell.jpg" /><br /><br /><img src="http://www.microsoft.com/australia/servers/ws2008/cartoon/04-didyoueverknow.jpg" /><br /><br /><p></p>
Not sure how you subscribe, but they're going to update weekly. <a href="http://www.microsoft.com/australia/servers/WS2008/">Check
it out</a>.<br /><br />
Kirk<br /><img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=c481f8b7-5284-4b9a-90ab-c82d8d12fa96" /></body>
      <title>PowerShell featured in Server vs Client comic strip</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,c481f8b7-5284-4b9a-90ab-c82d8d12fa96.aspx</guid>
      <link>http://pageofwords.com/blog/2007/12/22/PowerShellFeaturedInServerVsClientComicStrip.aspx</link>
      <pubDate>Sat, 22 Dec 2007 10:53:53 GMT</pubDate>
      <description>The Australian Windows Server team have done a good job with the new comic strip &lt;a href="http://www.microsoft.com/australia/servers/WS2008/"&gt;Server
vs Client&lt;/a&gt;:&lt;br&gt;
&lt;br&gt;
&lt;img src="http://www.microsoft.com/australia/servers/ws2008/cartoon/03-powershell.jpg"&gt;
&lt;br&gt;
&lt;br&gt;
&lt;img src="http://www.microsoft.com/australia/servers/ws2008/cartoon/04-didyoueverknow.jpg"&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
Not sure how you subscribe, but they're going to update weekly. &lt;a href="http://www.microsoft.com/australia/servers/WS2008/"&gt;Check
it out&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
Kirk&lt;br&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=c481f8b7-5284-4b9a-90ab-c82d8d12fa96" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,c481f8b7-5284-4b9a-90ab-c82d8d12fa96.aspx</comments>
      <category>PowerShell</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=df22c73f-a093-4d22-9389-3fff08eadd4e</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,df22c73f-a093-4d22-9389-3fff08eadd4e.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,df22c73f-a093-4d22-9389-3fff08eadd4e.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=df22c73f-a093-4d22-9389-3fff08eadd4e</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">Perhaps more interesting than the other <a href="http://pageofwords.com/blog/2007/11/06/PowerShell2RemotingBackgroundJobsAndAGUI.aspx">PowerShell
features announced in the past week</a>, the SQL 2008 team will release a <a href="http://blogs.msdn.com/powershell/archive/2007/11/13/sql-server-support-for-powershell.aspx">PowerShell
provider</a> in their latest CTP.<br /><br />
For a little more on providers, see <a href="http://pageofwords.com/blog/2007/06/21/PowerShellDriveProvidersCdingTheDream.aspx">my
earlier post</a>. I hope the provider allows data access, and not just management
capability.<br /><br />
Looking forward to having a play with that when I can get my hands on it!<br /><br />
Kirk<br /><img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=df22c73f-a093-4d22-9389-3fff08eadd4e" /></body>
      <title>PowerShell for SQL 2008</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,df22c73f-a093-4d22-9389-3fff08eadd4e.aspx</guid>
      <link>http://pageofwords.com/blog/2007/11/14/PowerShellForSQL2008.aspx</link>
      <pubDate>Wed, 14 Nov 2007 11:10:50 GMT</pubDate>
      <description>Perhaps more interesting than the other &lt;a href="http://pageofwords.com/blog/2007/11/06/PowerShell2RemotingBackgroundJobsAndAGUI.aspx"&gt;PowerShell
features announced in the past week&lt;/a&gt;, the SQL 2008 team will release a &lt;a href="http://blogs.msdn.com/powershell/archive/2007/11/13/sql-server-support-for-powershell.aspx"&gt;PowerShell
provider&lt;/a&gt; in their latest CTP.&lt;br&gt;
&lt;br&gt;
For a little more on providers, see &lt;a href="http://pageofwords.com/blog/2007/06/21/PowerShellDriveProvidersCdingTheDream.aspx"&gt;my
earlier post&lt;/a&gt;. I hope the provider allows data access, and not just management
capability.&lt;br&gt;
&lt;br&gt;
Looking forward to having a play with that when I can get my hands on it!&lt;br&gt;
&lt;br&gt;
Kirk&lt;br&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=df22c73f-a093-4d22-9389-3fff08eadd4e" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,df22c73f-a093-4d22-9389-3fff08eadd4e.aspx</comments>
      <category>PowerShell</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=1ef07a09-0ed7-4ec2-9eb1-de7acc012f44</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,1ef07a09-0ed7-4ec2-9eb1-de7acc012f44.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,1ef07a09-0ed7-4ec2-9eb1-de7acc012f44.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=1ef07a09-0ed7-4ec2-9eb1-de7acc012f44</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">I've been looking forward to the CTP of
PowerShell 2 for a while, and it's finally here.<br /><br />
I'm looking forward to installing it on a VM tonight (<a href="http://blogs.msdn.com/powershell/archive/2007/11/02/ctp-watch-this-space.aspx">don't
install it on your production / main desktop system just yet</a>).<br /><br />
The stand-out features from the two blog posts (<a href="http://blogs.msdn.com/powershell/archive/2007/11/06/the-community-technology-preview-ctp-of-windows-powershell-2-0.aspx">The
Community Technology Preview (CTP) of Windows PowerShell 2.0</a>, <a href="http://blogs.msdn.com/powershell/archive/2007/11/06/what-s-new-in-ctp-of-powershell-2-0.aspx">What's
New in CTP of PowerShell 2.0</a>) are:<br /><br /><b>PowerShell Remoting</b><br /><br /><i>"Windows PowerShell 2.0 provides support for executing Cmdlets and Scripts remotely.
PowerShell Remoting allows managing a collection of remote machines from a single
client. Managing remote computers using PowerShell 2.0, requires that PowerShell 2.0
be installed on all the computers taking part in the operation; that is the client
computer and the computer(s) being managed."</i><br /><br />
This solves a problem that a lot of sysadmins have - being able to nicely administer
many machines in their farm / network using PowerShell.<br /><br /><b>Background Jobs</b><br /><br /><i>"Windows PowerShell 2.0 introduces the concept of a background job (PsJob). 
A PsJob runs a command or expression asynchronously and "in the background" without
interacting with the console. The command prompt returns immediately and you can query
for the job results at your convenience.  You can run background jobs on a local
or remote computer."<br /></i><br />
Hurrah! I was surprised how much I missed this unix feature, so it's good to see background
jobs make an appearance. I'll be interested to see if they have changed the threading
model within PowerShell.<br /><br /><b>Graphical PowerShell</b><br /><br /><i>"This release includes a very early alpha version of the new graphical shell..."</i><br /><br />
Definitely something that people want, although others have filled the void quite
well up until now. Looking forward to playing with this.<br /><br />
Well done PowerShell team!<br /><br />
Kirk<br /><br /><p></p><img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=1ef07a09-0ed7-4ec2-9eb1-de7acc012f44" /></body>
      <title>PowerShell 2 - Remoting, background jobs and a GUI</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,1ef07a09-0ed7-4ec2-9eb1-de7acc012f44.aspx</guid>
      <link>http://pageofwords.com/blog/2007/11/06/PowerShell2RemotingBackgroundJobsAndAGUI.aspx</link>
      <pubDate>Tue, 06 Nov 2007 21:27:23 GMT</pubDate>
      <description>I've been looking forward to the CTP of PowerShell 2 for a while, and it's finally here.&lt;br&gt;
&lt;br&gt;
I'm looking forward to installing it on a VM tonight (&lt;a href="http://blogs.msdn.com/powershell/archive/2007/11/02/ctp-watch-this-space.aspx"&gt;don't
install it on your production / main desktop system just yet&lt;/a&gt;).&lt;br&gt;
&lt;br&gt;
The stand-out features from the two blog posts (&lt;a href="http://blogs.msdn.com/powershell/archive/2007/11/06/the-community-technology-preview-ctp-of-windows-powershell-2-0.aspx"&gt;The
Community Technology Preview (CTP) of Windows PowerShell 2.0&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/powershell/archive/2007/11/06/what-s-new-in-ctp-of-powershell-2-0.aspx"&gt;What's
New in CTP of PowerShell 2.0&lt;/a&gt;) are:&lt;br&gt;
&lt;br&gt;
&lt;b&gt;PowerShell Remoting&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;i&gt;"Windows PowerShell 2.0 provides support for executing Cmdlets and Scripts remotely.
PowerShell Remoting allows managing a collection of remote machines from a single
client. Managing remote computers using PowerShell 2.0, requires that PowerShell 2.0
be installed on all the computers taking part in the operation; that is the client
computer and the computer(s) being managed."&lt;/i&gt;
&lt;br&gt;
&lt;br&gt;
This solves a problem that a lot of sysadmins have - being able to nicely administer
many machines in their farm / network using PowerShell.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Background Jobs&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;i&gt;"Windows PowerShell 2.0 introduces the concept of a background job (PsJob).&amp;nbsp;
A PsJob runs a command or expression asynchronously and "in the background" without
interacting with the console. The command prompt returns immediately and you can query
for the job results at your convenience.&amp;nbsp; You can run background jobs on a local
or remote computer."&lt;br&gt;
&lt;/i&gt;
&lt;br&gt;
Hurrah! I was surprised how much I missed this unix feature, so it's good to see background
jobs make an appearance. I'll be interested to see if they have changed the threading
model within PowerShell.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Graphical PowerShell&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;i&gt;"This release includes a very early alpha version of the new graphical shell..."&lt;/i&gt;
&lt;br&gt;
&lt;br&gt;
Definitely something that people want, although others have filled the void quite
well up until now. Looking forward to playing with this.&lt;br&gt;
&lt;br&gt;
Well done PowerShell team!&lt;br&gt;
&lt;br&gt;
Kirk&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=1ef07a09-0ed7-4ec2-9eb1-de7acc012f44" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,1ef07a09-0ed7-4ec2-9eb1-de7acc012f44.aspx</comments>
      <category>PowerShell</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=878c84d8-ec46-4ef4-a5dc-4344d7e42e44</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,878c84d8-ec46-4ef4-a5dc-4344d7e42e44.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,878c84d8-ec46-4ef4-a5dc-4344d7e42e44.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=878c84d8-ec46-4ef4-a5dc-4344d7e42e44</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">If you've been a Perl programmer, you've
probably used <a href="http://search.cpan.org/%7Ejhi/perl-5.8.0/lib/File/Temp.pm">File::Temp</a> occasionally,
to generate unique filenames for temporary files and clean up afterwards. In other
lanuages you may have used a variation of the standard <a href="http://en.wikipedia.org/wiki/POSIX">POSIX</a> tmpnam
or tmpfile.<br /><br />
In PowerShell, you'll often need to generate temporary files, especially if you're
working with import-csv or import-clixml -- as they don't support data on the pipeline.<br /><br />
There's not (yet) anything I could find that is quite as nice as File::Temp, but if
you want to generate a unique filename or directory name, or create a temp file on
disk ready to be used, you can use these methods on System.IO.Path:<br /><br /><b>System.IO.Path.GetRandomFileName() <a href="http://msdn2.microsoft.com/en-us/library/system.io.path.getrandomfilename.aspx">[msdn]</a></b><br />
Returns a random folder name or file name. The filename generated is cryptographically
secure, meaning that no malicious script should be able to guess what filename you've
just been given.<br /><br />
To use from PowerShell:<br /><font face="Courier New">53&gt; $filename = [System.IO.Path]::GetRandomFileName()<br />
54&gt; $filename<br />
lbhrurye.uhp<br />
55&gt; Get-ChildItem &gt; $filename</font><br /><br /><b>System.IO.Path.GetTempFileName() <a href="http://msdn2.microsoft.com/en-us/library/system.io.path.gettempfilename.aspx">[msdn]</a></b><br />
This method will actually create a temporary file on disk, in your temp directory
(returned by System.IO.Path.GetTempPath). The file is 0 bytes, and ready for you to
clobber with your own content. You can be sure that no other process has generated
the same filename, but it's not exactly a secret what filename you've got -- you should
use the GetRandomFileName method if you need a bit of security.<br /><br />
To use from PowerShell:<br /><font face="Courier New">59&gt; $filename = [System.IO.Path]::GetTempFileName()<br />
60&gt; get-childitem | export-csv $filename<br /></font><br />
The other thing to remember with GetTempFileName is that you need to remember to delete
the temp file after you're finished (something that File::Temp does quite nicely for
Perl'ers). Some day I might write a wrapper that deletes the file when the variable
goes out of scope.<br /><br /><p></p><img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=878c84d8-ec46-4ef4-a5dc-4344d7e42e44" /></body>
      <title>PowerShell temporary file - tmpnam / File::Temp</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,878c84d8-ec46-4ef4-a5dc-4344d7e42e44.aspx</guid>
      <link>http://pageofwords.com/blog/2007/09/20/PowerShellTemporaryFileTmpnamFileTemp.aspx</link>
      <pubDate>Thu, 20 Sep 2007 09:08:25 GMT</pubDate>
      <description>If you've been a Perl programmer, you've probably used &lt;a href="http://search.cpan.org/%7Ejhi/perl-5.8.0/lib/File/Temp.pm"&gt;File::Temp&lt;/a&gt; occasionally,
to generate unique filenames for temporary files and clean up afterwards. In other
lanuages you may have used a variation of the standard &lt;a href="http://en.wikipedia.org/wiki/POSIX"&gt;POSIX&lt;/a&gt; tmpnam
or tmpfile.&lt;br&gt;
&lt;br&gt;
In PowerShell, you'll often need to generate temporary files, especially if you're
working with import-csv or import-clixml -- as they don't support data on the pipeline.&lt;br&gt;
&lt;br&gt;
There's not (yet) anything I could find that is quite as nice as File::Temp, but if
you want to generate a unique filename or directory name, or create a temp file on
disk ready to be used, you can use these methods on System.IO.Path:&lt;br&gt;
&lt;br&gt;
&lt;b&gt;System.IO.Path.GetRandomFileName() &lt;a href="http://msdn2.microsoft.com/en-us/library/system.io.path.getrandomfilename.aspx"&gt;[msdn]&lt;/a&gt;&lt;/b&gt;
&lt;br&gt;
Returns a random folder name or file name. The filename generated is cryptographically
secure, meaning that no malicious script should be able to guess what filename you've
just been given.&lt;br&gt;
&lt;br&gt;
To use from PowerShell:&lt;br&gt;
&lt;font face="Courier New"&gt;53&amp;gt; $filename = [System.IO.Path]::GetRandomFileName()&lt;br&gt;
54&amp;gt; $filename&lt;br&gt;
lbhrurye.uhp&lt;br&gt;
55&amp;gt; Get-ChildItem &amp;gt; $filename&lt;/font&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;System.IO.Path.GetTempFileName() &lt;a href="http://msdn2.microsoft.com/en-us/library/system.io.path.gettempfilename.aspx"&gt;[msdn]&lt;/a&gt;&lt;/b&gt;
&lt;br&gt;
This method will actually create a temporary file on disk, in your temp directory
(returned by System.IO.Path.GetTempPath). The file is 0 bytes, and ready for you to
clobber with your own content. You can be sure that no other process has generated
the same filename, but it's not exactly a secret what filename you've got -- you should
use the GetRandomFileName method if you need a bit of security.&lt;br&gt;
&lt;br&gt;
To use from PowerShell:&lt;br&gt;
&lt;font face="Courier New"&gt;59&amp;gt; $filename = [System.IO.Path]::GetTempFileName()&lt;br&gt;
60&amp;gt; get-childitem | export-csv $filename&lt;br&gt;
&lt;/font&gt;
&lt;br&gt;
The other thing to remember with GetTempFileName is that you need to remember to delete
the temp file after you're finished (something that File::Temp does quite nicely for
Perl'ers). Some day I might write a wrapper that deletes the file when the variable
goes out of scope.&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=878c84d8-ec46-4ef4-a5dc-4344d7e42e44" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,878c84d8-ec46-4ef4-a5dc-4344d7e42e44.aspx</comments>
      <category>PowerShell</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=97971e16-7b31-46ee-988a-328eb79717e1</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,97971e16-7b31-46ee-988a-328eb79717e1.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,97971e16-7b31-46ee-988a-328eb79717e1.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=97971e16-7b31-46ee-988a-328eb79717e1</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Want to transfer your <a href="http://icanhascheezburger.com/">cheezburger</a> skillz
to the command prompt? Navigate your files using lolshell.
</p>
        <p>
          <a href="http://pageofwords.com/blog/content/binary/lolshell.ps1">Download lolshell.ps1</a> [Requires
PowerShell 1.0] 
</p>
        <p>
To give you a taste of the awesome powers of lolshell, here's a transcript. My favourite
function is WTF. 
</p>
        <pre>
          <font color="#ff0000">1&gt;</font>
          <font color="#0000ff">. ./lolshell.ps1</font> |\_/|
(. .) =w= (\ / ^ \// (|| ||) ,""_""_ . IM IN UR SHEL FIDLNG UR BITS <font color="#ff0000">2&gt;</font><font color="#0000ff">IM
IN UR C DRIVE</font> KTHX <font color="#ff0000">3&gt;</font><font color="#0000ff">IM
WATCHN YR VIDEOS</font> VIDEOS WATCHN U <font color="#ff0000">4&gt;</font><font color="#0000ff">WARE
AM I?</font> LOL. I CAN SEEZ U HRE: C:\Users\kirk\Videos <font color="#ff0000">5&gt;</font><font color="#0000ff">GIMMEH
ALL MI FILZ</font> Directory: Microsoft.PowerShell.Core\FileSystem::C:\Users\kirk\Vi
deos Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 28/02/2007
12:40 a.m. 14882401 Vista_0001.wmv -a--- 28/02/2007 11:10 p.m. 14816631 Vista_0002.wmv <font color="#ff0000">6&gt;</font><font color="#0000ff">IM
WATCHN YR Vista_0001.wmv</font> [Video opens in Media Player] <font color="#ff0000">7&gt;</font><font color="#0000ff">WARE
AM I?</font> LOL. I CAN SEEZ U HRE: C:\Users\kirk\Videos <font color="#ff0000">8&gt;</font><font color="#0000ff">IM
WATCHN YR MOMMA</font> U GO 'WAY <font color="#ff0000">9&gt;</font><font color="#0000ff">WARE
AM I?</font> LOL. I CAN SEEZ U HRE: C:\Users\kirk <font color="#ff0000">10&gt;</font><font color="#0000ff">IM
IN UR Z DRIVE</font> OMGWTF?! <font color="#ff0000">11&gt;</font><font color="#0000ff">WTF
JUST HAPND?</font> WTF? LOL. HAPND JUST lolshell :) Cannot find drive. A drive with
name 'Z' does not exist. <font color="#ff0000">12&gt;</font><font color="#0000ff">HOW
DUZ I PRINT?</font> NAME Out-Printer SYNOPSIS Sends output to a printer. ... [More
help prints here] <font color="#ff0000">13&gt;</font><font color="#0000ff">OKTHXBYE</font></pre>
        <a href="http://pageofwords.com/blog/content/binary/lolshell.ps1">lolshell.ps1 (3.5
KB)</a>
        <a href="http://pageofwords.com/blog/content/binary/lolshell1.ps1">
        </a>
        <img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=97971e16-7b31-46ee-988a-328eb79717e1" />
      </body>
      <title>Introducing.... lolshell</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,97971e16-7b31-46ee-988a-328eb79717e1.aspx</guid>
      <link>http://pageofwords.com/blog/2007/09/08/IntroducingLolshell.aspx</link>
      <pubDate>Sat, 08 Sep 2007 11:05:13 GMT</pubDate>
      <description>&lt;p&gt;
Want to transfer your &lt;a href="http://icanhascheezburger.com/"&gt;cheezburger&lt;/a&gt; skillz
to the command prompt? Navigate your files using lolshell.
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://pageofwords.com/blog/content/binary/lolshell.ps1"&gt;Download lolshell.ps1&lt;/a&gt; [Requires
PowerShell 1.0] 
&lt;/p&gt;
&lt;p&gt;
To give you a taste of the awesome powers of lolshell, here's a transcript. My favourite
function is WTF. 
&lt;/p&gt;
&lt;pre&gt;&lt;font color="#ff0000"&gt;1&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;. ./lolshell.ps1&lt;/font&gt; |\_/|
(. .) =w= (\ / ^ \// (|| ||) ,""_""_ . IM IN UR SHEL FIDLNG UR BITS &lt;font color="#ff0000"&gt;2&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;IM
IN UR C DRIVE&lt;/font&gt; KTHX &lt;font color="#ff0000"&gt;3&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;IM
WATCHN YR VIDEOS&lt;/font&gt; VIDEOS WATCHN U &lt;font color="#ff0000"&gt;4&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;WARE
AM I?&lt;/font&gt; LOL. I CAN SEEZ U HRE: C:\Users\kirk\Videos &lt;font color="#ff0000"&gt;5&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;GIMMEH
ALL MI FILZ&lt;/font&gt; Directory: Microsoft.PowerShell.Core\FileSystem::C:\Users\kirk\Vi
deos Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 28/02/2007
12:40 a.m. 14882401 Vista_0001.wmv -a--- 28/02/2007 11:10 p.m. 14816631 Vista_0002.wmv &lt;font color="#ff0000"&gt;6&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;IM
WATCHN YR Vista_0001.wmv&lt;/font&gt; [Video opens in Media Player] &lt;font color="#ff0000"&gt;7&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;WARE
AM I?&lt;/font&gt; LOL. I CAN SEEZ U HRE: C:\Users\kirk\Videos &lt;font color="#ff0000"&gt;8&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;IM
WATCHN YR MOMMA&lt;/font&gt; U GO 'WAY &lt;font color="#ff0000"&gt;9&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;WARE
AM I?&lt;/font&gt; LOL. I CAN SEEZ U HRE: C:\Users\kirk &lt;font color="#ff0000"&gt;10&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;IM
IN UR Z DRIVE&lt;/font&gt; OMGWTF?! &lt;font color="#ff0000"&gt;11&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;WTF
JUST HAPND?&lt;/font&gt; WTF? LOL. HAPND JUST lolshell :) Cannot find drive. A drive with
name 'Z' does not exist. &lt;font color="#ff0000"&gt;12&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;HOW
DUZ I PRINT?&lt;/font&gt; NAME Out-Printer SYNOPSIS Sends output to a printer. ... [More
help prints here] &lt;font color="#ff0000"&gt;13&amp;gt;&lt;/font&gt; &lt;font color="#0000ff"&gt;OKTHXBYE&lt;/font&gt; &lt;/pre&gt;
&lt;a href="http://pageofwords.com/blog/content/binary/lolshell.ps1"&gt;lolshell.ps1 (3.5
KB)&lt;/a&gt;&lt;a href="http://pageofwords.com/blog/content/binary/lolshell1.ps1"&gt; &lt;/a&gt;&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=97971e16-7b31-46ee-988a-328eb79717e1" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,97971e16-7b31-46ee-988a-328eb79717e1.aspx</comments>
      <category>.NET;PowerShell;What the?</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=774db954-65e7-4d69-b1ab-34c918d370f5</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,774db954-65e7-4d69-b1ab-34c918d370f5.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,774db954-65e7-4d69-b1ab-34c918d370f5.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=774db954-65e7-4d69-b1ab-34c918d370f5</wfw:commentRss>
      <slash:comments>2</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">Well, I thought that my PowerShell talk
went okay -- although it didn't rank in the <a href="http://blogs.msdn.com/darrylburling/archive/2007/08/24/tech-ed-sessions-top-10.aspx">top
10 presentations at TechEd</a> (congratulations <a href="http://turtle.net.nz">Jeremy</a> and
Andrew!).<br /><br />
The slides for my talk are available on the <a href="http://www.microsoft.com/nz/events/teched/download/search.aspx">downloads
site</a>:<br /><ul><li><a class="anchor1" style="font-weight: bold; font-size: 110%;" href="http://download.microsoft.com/download/a/8/4/a84d6371-5ff5-49f3-bc5a-412106579486/SVR308.pptx">SVR308
- Windows PowerShell: The Future of Server Administration</a></li></ul><br />
My presentation was in the <a href="http://www.skycityauckland.co.nz/skycity/auckland/whats-on/skycity-theatre/skycity-theatre.cfm">SkyCity
theatre</a>, a <a href="http://www.skycityauckland.co.nz/skycity/auckland/whats-on/skycity-theatre/venue-info_home.cfm">700
seat venue</a> used for concerts and films. I have to admit that the venue was the
most intimidating part of giving my third talk at TechEd -- but I think I survived
it intact :)<br /><br />
Some additional links for your browsing pleasure:<br /><br /><ul><li><a href="http://andrewpeters.net/powershell-gadget/">PowerShell gadget</a></li><li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=3b3f7ce4-43ea-4a21-90cc-966a7fc6c6e8">Windows
PowerShell graphical help file</a></li><li><a temp_href="http://www.codeplex.com/PowerShellCX/ " href="http://www.codeplex.com/PowerShellCX/%20">Codeplex
- powershell community extensions</a></li><li><a href="http://blogs.msdn.com/PowerShell">Windows PowerShell Team blog</a></li><li><a href="http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx">Windows PowerShell
ScriptCenter </a></li><li><a href="http://www.codeplex.com/ShinyPower">ShinyPower - help browser</a></li><li><a href="http://pshell.info/">pshell.info - resource site</a><br /></li></ul><br />
If you have any questions about my talk, or about PowerShell, feel free to fire them
this way -- either through this blog or via my email address (it's not that hard to
find it on the interweb, so I won't list it again here :)<br /><p></p><img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=774db954-65e7-4d69-b1ab-34c918d370f5" /></body>
      <title>PowerShell talk at TechEd</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,774db954-65e7-4d69-b1ab-34c918d370f5.aspx</guid>
      <link>http://pageofwords.com/blog/2007/08/27/PowerShellTalkAtTechEd.aspx</link>
      <pubDate>Mon, 27 Aug 2007 10:03:21 GMT</pubDate>
      <description>Well, I thought that my PowerShell talk went okay -- although it didn't rank in the &lt;a href="http://blogs.msdn.com/darrylburling/archive/2007/08/24/tech-ed-sessions-top-10.aspx"&gt;top
10 presentations at TechEd&lt;/a&gt; (congratulations &lt;a href="http://turtle.net.nz"&gt;Jeremy&lt;/a&gt; and
Andrew!).&lt;br&gt;
&lt;br&gt;
The slides for my talk are available on the &lt;a href="http://www.microsoft.com/nz/events/teched/download/search.aspx"&gt;downloads
site&lt;/a&gt;:&lt;br&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a class="anchor1" style="font-weight: bold; font-size: 110%;" href="http://download.microsoft.com/download/a/8/4/a84d6371-5ff5-49f3-bc5a-412106579486/SVR308.pptx"&gt;SVR308
- Windows PowerShell: The Future of Server Administration&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
My presentation was in the &lt;a href="http://www.skycityauckland.co.nz/skycity/auckland/whats-on/skycity-theatre/skycity-theatre.cfm"&gt;SkyCity
theatre&lt;/a&gt;, a &lt;a href="http://www.skycityauckland.co.nz/skycity/auckland/whats-on/skycity-theatre/venue-info_home.cfm"&gt;700
seat venue&lt;/a&gt; used for concerts and films. I have to admit that the venue was the
most intimidating part of giving my third talk at TechEd -- but I think I survived
it intact :)&lt;br&gt;
&lt;br&gt;
Some additional links for your browsing pleasure:&lt;br&gt;
&lt;br&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://andrewpeters.net/powershell-gadget/"&gt;PowerShell gadget&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=3b3f7ce4-43ea-4a21-90cc-966a7fc6c6e8"&gt;Windows
PowerShell graphical help file&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a temp_href="http://www.codeplex.com/PowerShellCX/ " href="http://www.codeplex.com/PowerShellCX/%20"&gt;Codeplex
- powershell community extensions&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://blogs.msdn.com/PowerShell"&gt;Windows PowerShell Team blog&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx"&gt;Windows PowerShell
ScriptCenter&amp;nbsp;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.codeplex.com/ShinyPower"&gt;ShinyPower - help browser&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://pshell.info/"&gt;pshell.info - resource site&lt;/a&gt;
&lt;br&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
If you have any questions about my talk, or about PowerShell, feel free to fire them
this way -- either through this blog or via my email address (it's not that hard to
find it on the interweb, so I won't list it again here :)&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=774db954-65e7-4d69-b1ab-34c918d370f5" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,774db954-65e7-4d69-b1ab-34c918d370f5.aspx</comments>
      <category>PowerShell;TechEd</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=ed410cb7-ebb2-426c-9b68-6734ea57f55d</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,ed410cb7-ebb2-426c-9b68-6734ea57f55d.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,ed410cb7-ebb2-426c-9b68-6734ea57f55d.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=ed410cb7-ebb2-426c-9b68-6734ea57f55d</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <a href="http://blogs.msdn.com/darrylburling/archive/2007/07/13/updated-tech-ed-sessions-and-more-background.aspx">Darryl
has just posted</a> that the NZ TechEd schedule has been updated and is available
on <a href="https://aunz.msteched.com/NZSessions.aspx">Comnet</a>.<br /><br />
I'm excited to be presenting on Windows PowerShell again -- last year was a blast,
and there's new things to talk about this year.<br /><br />
One of the first things I do is look at the competition. It's always good to know
what you're scheduled up against. At 10:45 on the Tuesday morning, I'm up against
these sessions:<br /><br />
ARC308 - Software Factories<br /><br />
CON311 - Building Microsoft Windows Workflow Foundation Enabled Windows Communication
Foundation Services in .NET Framework 3.5<br />
Speaker(s): Matthew Winkler<br /><br />
DAT309 - Implementing Scale-Out Solutions with Microsoft SQL Server 2005<br />
Speaker(s): Don Vilen<br /><br />
DEV318 - Strategies for Moving Your Microsoft Visual Basic 6 Investments to .NET<br />
Speaker(s): Paul Yuknewicz<br /><br />
OFC301 - Capacity and Performance Planning for Microsoft SharePoint Products and Techologies
2007<br />
Speaker(s): Mike Fitzmaurice<br /><br />
UNC302 - Microsoft Windows Mobile 6 Security In-Depth<br />
Speaker(s): Steve Riley<br /><br />
WEB317 - Enhancing ASP.Net AJAX applications with Silverlight<br />
Speaker(s): Nikhil Kothari<br /><br />
Come and hear about PowerShell, you know you want to!<br /><br /><p></p><img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=ed410cb7-ebb2-426c-9b68-6734ea57f55d" /></body>
      <title>TechEd 07 - know your competition</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,ed410cb7-ebb2-426c-9b68-6734ea57f55d.aspx</guid>
      <link>http://pageofwords.com/blog/2007/07/13/TechEd07KnowYourCompetition.aspx</link>
      <pubDate>Fri, 13 Jul 2007 09:26:42 GMT</pubDate>
      <description>&lt;a href="http://blogs.msdn.com/darrylburling/archive/2007/07/13/updated-tech-ed-sessions-and-more-background.aspx"&gt;Darryl
has just posted&lt;/a&gt; that the NZ TechEd schedule has been updated and is available
on &lt;a href="https://aunz.msteched.com/NZSessions.aspx"&gt;Comnet&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
I'm excited to be presenting on Windows PowerShell again -- last year was a blast,
and there's new things to talk about this year.&lt;br&gt;
&lt;br&gt;
One of the first things I do is look at the competition. It's always good to know
what you're scheduled up against. At 10:45 on the Tuesday morning, I'm up against
these sessions:&lt;br&gt;
&lt;br&gt;
ARC308 - Software Factories&lt;br&gt;
&lt;br&gt;
CON311 - Building Microsoft Windows Workflow Foundation Enabled Windows Communication
Foundation Services in .NET Framework 3.5&lt;br&gt;
Speaker(s): Matthew Winkler&lt;br&gt;
&lt;br&gt;
DAT309 - Implementing Scale-Out Solutions with Microsoft SQL Server 2005&lt;br&gt;
Speaker(s): Don Vilen&lt;br&gt;
&lt;br&gt;
DEV318 - Strategies for Moving Your Microsoft Visual Basic 6 Investments to .NET&lt;br&gt;
Speaker(s): Paul Yuknewicz&lt;br&gt;
&lt;br&gt;
OFC301 - Capacity and Performance Planning for Microsoft SharePoint Products and Techologies
2007&lt;br&gt;
Speaker(s): Mike Fitzmaurice&lt;br&gt;
&lt;br&gt;
UNC302 - Microsoft Windows Mobile 6 Security In-Depth&lt;br&gt;
Speaker(s): Steve Riley&lt;br&gt;
&lt;br&gt;
WEB317 - Enhancing ASP.Net AJAX applications with Silverlight&lt;br&gt;
Speaker(s): Nikhil Kothari&lt;br&gt;
&lt;br&gt;
Come and hear about PowerShell, you know you want to!&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=ed410cb7-ebb2-426c-9b68-6734ea57f55d" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,ed410cb7-ebb2-426c-9b68-6734ea57f55d.aspx</comments>
      <category>PowerShell;TechEd</category>
    </item>
    <item>
      <trackback:ping>http://pageofwords.com/blog/Trackback.aspx?guid=4e6ab036-a688-46f6-9c58-2cdb20a592ae</trackback:ping>
      <pingback:server>http://pageofwords.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://pageofwords.com/blog/PermaLink,guid,4e6ab036-a688-46f6-9c58-2cdb20a592ae.aspx</pingback:target>
      <dc:creator>Kirk Jackson</dc:creator>
      <wfw:comment>http://pageofwords.com/blog/CommentView,guid,4e6ab036-a688-46f6-9c58-2cdb20a592ae.aspx</wfw:comment>
      <wfw:commentRss>http://pageofwords.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=4e6ab036-a688-46f6-9c58-2cdb20a592ae</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Last year at TechEd I was talking about the drive providers that ship with PowerShell,
such as the ENV: drive that let's you view environment variables and the HKLM: and
HKCU: drives that let you navigate the registry.
</p>
        <p>
I said it would be cool if you could CD into your database server, and DIR the rows
of a table. Here's how you can:
</p>
        <p>
          <a href="http://blogs.msdn.com/powershell/archive/2007/06/21/demo-sql-provider-code.aspx">Demo
SQL Provider Code</a>
        </p>
        <p>
        </p>
        <p>
JD Trask has also put together a drive provider for mounting and navigating Zip archives:
</p>
        <p>
          <a href="http://blog.bluecog.co.nz/archives/2007/06/21/howto-write-a-powershell-drive-provider/#comment-45730">How
to Write a PowerShell drive provider</a>
        </p>
        <p>
JD's example comes with some decent documentation explaining the four core classes
that comprise the provider, showing how to install the provider and giving some ideas
on how to extend the provider for extra credit.
</p>
        <p>
It rather reminds me of a tcsh extension I used to use to cd into tar.gz's back in
the day :) 
</p>
        <img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=4e6ab036-a688-46f6-9c58-2cdb20a592ae" />
      </body>
      <title>PowerShell drive providers -- cd'ing the dream</title>
      <guid isPermaLink="false">http://pageofwords.com/blog/PermaLink,guid,4e6ab036-a688-46f6-9c58-2cdb20a592ae.aspx</guid>
      <link>http://pageofwords.com/blog/2007/06/21/PowerShellDriveProvidersCdingTheDream.aspx</link>
      <pubDate>Thu, 21 Jun 2007 10:26:11 GMT</pubDate>
      <description>&lt;p&gt;
Last year at TechEd I was talking about the drive providers that ship with PowerShell,
such as the ENV: drive that let's you view environment variables and the HKLM: and
HKCU: drives that let you navigate the registry.
&lt;/p&gt;
&lt;p&gt;
I said it would be cool if you could CD into your database server, and DIR the rows
of a table. Here's how you can:
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blogs.msdn.com/powershell/archive/2007/06/21/demo-sql-provider-code.aspx"&gt;Demo
SQL Provider Code&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;
JD Trask has also put together a drive provider for mounting and navigating Zip archives:
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://blog.bluecog.co.nz/archives/2007/06/21/howto-write-a-powershell-drive-provider/#comment-45730"&gt;How
to Write a PowerShell drive provider&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
JD's example comes with some decent documentation explaining the four core classes
that comprise the provider, showing how to install the provider and giving some ideas
on how to extend the provider for extra credit.
&lt;/p&gt;
&lt;p&gt;
It rather reminds me of a tcsh extension I used to use to cd into tar.gz's back in
the day :) 
&lt;/p&gt;
&lt;img width="0" height="0" src="http://pageofwords.com/blog/aggbug.ashx?id=4e6ab036-a688-46f6-9c58-2cdb20a592ae" /&gt;</description>
      <comments>http://pageofwords.com/blog/CommentView,guid,4e6ab036-a688-46f6-9c58-2cdb20a592ae.aspx</comments>
      <category>PowerShell</category>
    </item>
  </channel>
</rss>