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

<channel>
	<title>Adam.Kahtava.com / AdamDotCom &#187; PowerShell</title>
	<atom:link href="http://adam.kahtava.com/journal/category/powershell/feed/" rel="self" type="application/rss+xml" />
	<link>http://adam.kahtava.com/journal</link>
	<description>A software development blog</description>
	<pubDate>Fri, 12 Mar 2010 03:41:25 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Memcached On PowerShell</title>
		<link>http://adam.kahtava.com/journal/2010/03/09/memcached-on-powershell/</link>
		<comments>http://adam.kahtava.com/journal/2010/03/09/memcached-on-powershell/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 17:00:44 +0000</pubDate>
		<dc:creator>Adam Kahtava</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[PowerShell]]></category>

		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://adam.kahtava.com/journal/?p=2383</guid>
		<description><![CDATA[Memcached has been around for a while, but it's still pretty neat. 
Experiencing a bottleneck with your Object Relational Mappers, Services, Middleware, Database, or whatever? Then Memcached it!
Memcached was intially developed for LiveJournal by Danga Interactive in 2003, and is used by many large sites (YouTube, Amazon, Twitter, to name a few). Today, you can [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://memcached.org/">Memcached</a> has been around for a while, but it's still pretty neat. </p>
<p><em>Experiencing a bottleneck with your Object Relational Mappers, Services, Middleware, Database, or whatever? Then Memcached it!</em></p>
<p>Memcached was intially developed for LiveJournal by Danga Interactive in 2003, and is used by many large sites (YouTube, Amazon, Twitter, to name a few). Today, you can find a Memcached library for all your favourite languages (<a href="http://code.google.com/p/memcached/wiki/Clients">here's the list</a>).</p>
<p>Now; cache testing is tough period, and testing Memcached (which is accessed through a <a href="http://lzone.de/articles/memcached.htm">telnet</a> client) is even more difficult - it's fair to mention that there are a large number of wrappers for Memcached outside the .NET world, but I couldn't find one for that met my needs. </p>
<p>So... I wrote my own. :)</p>
<h3>Introducing Memcached on Powershell</h3>
<p><strong>Sample usage and output</strong></p>
<p>Loading the script (source can be found <a href="http://github.com/AdamDotCom/memcached-on-powershell/raw/master/memcached-on-powershell.ps1">here</a>)</p>
<div class="syntax_hilite">
<div id="code-6">
<div class="code">PS C:\&gt; .\memcached-on-powershell.<span style="">ps1</span></div>
</div>
</div>
<p></p>
<p>Checking Memcached stats on an empty instance</p>
<div class="syntax_hilite">
<div id="code-7">
<div class="code">PS C:\&gt; memcached-stats <span style="color:#800000;">127</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">1</span> <span style="color:#800000;">11211</span><br />
Total items in cache:&nbsp; <span style="color:#800000;">0</span><br />
No slabs found</div>
</div>
</div>
<p></p>
<p>Checking Memcached stats after items have been added to the cache</p>
<div class="syntax_hilite">
<div id="code-8">
<div class="code">PS C:\&gt; memcached-stats <span style="color:#800000;">127</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">1</span> <span style="color:#800000;">11211</span><br />
Total items in cache:&nbsp; <span style="color:#800000;">3</span><br />
Stats for Slab:&nbsp; <span style="color:#800000;">1</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Key: <span style="color:#CC0000;">'resume-service:resume:adam-kahtava'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Key: <span style="color:#CC0000;">'open-source-service:github:adamdotcom'</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Key: <span style="color:#CC0000;">'open-source-service:googlecode:adam.kahtava.com'</span></div>
</div>
</div>
<p></p>
<p>Clearing all Memcached items</p>
<div class="syntax_hilite">
<div id="code-9">
<div class="code">PS C:\&gt; clear-memcached-items <span style="color:#800000;">127</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">1</span> <span style="color:#800000;">11211</span><br />
Total items in cache:&nbsp; <span style="color:#800000;">0</span></div>
</div>
</div>
<p></p>
<p>Checking Memcached stats on a cleared instance</p>
<div class="syntax_hilite">
<div id="code-10">
<div class="code">PS C:\&gt; memcached-stats <span style="color:#800000;">127</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">0</span>.<span style="color:#800000;">1</span> <span style="color:#800000;">11211</span><br />
Total items in cache:&nbsp; <span style="color:#800000;">0</span><br />
Stats for Slab:&nbsp; <span style="color:#800000;">1</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Empty</div>
</div>
</div>
<p></p>
<p>If your test obsessed then you might be interested in the Memcached <a href="http://github.com/memcached/memcached/tree/master/t/">tests</a>.</p>
<p>As always feel free to contribute, view, or download the source <a href="http://github.com/AdamDotCom/memcached-on-powershell">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://adam.kahtava.com/journal/2010/03/09/memcached-on-powershell/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sending Email With Attachments In PowerShell</title>
		<link>http://adam.kahtava.com/journal/2010/01/19/sending-email-with-attachments-in-powershell/</link>
		<comments>http://adam.kahtava.com/journal/2010/01/19/sending-email-with-attachments-in-powershell/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 16:00:22 +0000</pubDate>
		<dc:creator>Adam Kahtava</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://adam.kahtava.com/journal/?p=2225</guid>
		<description><![CDATA[Here's an example on how to send email with attachments via PowerShell:


# A Mailer script that makes use of System.Net to send email with attachments
#
# Sample usage:
#&#160; PS C:\&#62; Send-Mail-With-Attachment 'email@domain.com' 'Hello world!' 'Filename.txt'
function global:Send-Mail-With-Attachment&#40;$to, $subject, $file&#41;&#123;
&#160; $filenameAndPath = &#40;Resolve-Path .\$file&#41;.ToString&#40;&#41;
&#160; $from = 'Automated Powershell Mailer'
&#160; &#91;void&#93;&#91;Reflection.Assembly&#93;::LoadWithPartialName&#40;'System.Net'&#41; &#124; out-null
&#160; $message = New-Object System.Net.Mail.MailMessage&#40;$from, $to, $subject, [...]]]></description>
			<content:encoded><![CDATA[<p>Here's an example on how to send email with attachments via PowerShell:</p>
<div class="syntax_hilite">
<div id="csharp-12">
<div class="csharp"><span style="color: #008080;"># A Mailer script that makes use of System.Net to send email with attachments</span><br />
<span style="color: #008080;">#</span><br />
<span style="color: #008080;"># Sample usage:</span><br />
<span style="color: #008080;">#&nbsp; PS C:\&gt; Send-Mail-With-Attachment 'email@domain.com' 'Hello world!' 'Filename.txt'</span></p>
<p>function global:Send-Mail-With-Attachment<span style="color: #000000;">&#40;</span>$to, $subject, $file<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span></p>
<p>&nbsp; $filenameAndPath = <span style="color: #000000;">&#40;</span>Resolve-Path .\$file<span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><br />
&nbsp; $from = <span style="color: #808080;">'Automated Powershell Mailer'</span></p>
<p>&nbsp; <span style="color: #000000;">&#91;</span><span style="color: #0600FF;">void</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#91;</span>Reflection.<span style="color: #0000FF;">Assembly</span><span style="color: #000000;">&#93;</span>::<span style="color: #0000FF;">LoadWithPartialName</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">'System.Net'</span><span style="color: #000000;">&#41;</span> | out-<span style="color: #0600FF;">null</span></p>
<p>&nbsp; $message = New-<span style="color: #FF0000;">Object</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Net</span>.<span style="color: #0000FF;">Mail</span>.<span style="color: #0000FF;">MailMessage</span><span style="color: #000000;">&#40;</span>$from, $to, $subject, $subject<span style="color: #000000;">&#41;</span><br />
&nbsp; $attachment = New-<span style="color: #FF0000;">Object</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Net</span>.<span style="color: #0000FF;">Mail</span>.<span style="color: #0000FF;">Attachment</span><span style="color: #000000;">&#40;</span>$filenameAndPath, <span style="color: #808080;">'text/plain'</span><span style="color: #000000;">&#41;</span><br />
&nbsp; $message.<span style="color: #0000FF;">Attachments</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>$attachment<span style="color: #000000;">&#41;</span></p>
<p>&nbsp; $smtpClient = New-<span style="color: #FF0000;">Object</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Net</span>.<span style="color: #0000FF;">Mail</span>.<span style="color: #0000FF;">SmtpClient</span><br />
&nbsp; $smtpClient.<span style="color: #0000FF;">host</span> = <span style="color: #808080;">'mail.domain.com'</span><br />
&nbsp; $smtpClient.<span style="color: #0000FF;">Send</span><span style="color: #000000;">&#40;</span>$message<span style="color: #000000;">&#41;</span><br />
<span style="color: #000000;">&#125;</span></div>
</div>
</div>
<p></p>
<p>Contribute, view, or download the script here: <a href="http://code.google.com/p/adamdotcom-script/source/browse/trunk/Scripts/PowerShell/Mailer.ps1">Mailer.ps1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://adam.kahtava.com/journal/2010/01/19/sending-email-with-attachments-in-powershell/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hacking Anti Cross-site Request Forgery Tokens (CSRF) With Powershell</title>
		<link>http://adam.kahtava.com/journal/2009/12/16/hacking-an-anti-cross-site-request-forgery-tokens-csrf-with-powershell/</link>
		<comments>http://adam.kahtava.com/journal/2009/12/16/hacking-an-anti-cross-site-request-forgery-tokens-csrf-with-powershell/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 16:00:25 +0000</pubDate>
		<dc:creator>Adam Kahtava</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[ASP.NET MVC]]></category>

		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://adam.kahtava.com/journal/?p=2149</guid>
		<description><![CDATA[I ported the example of how to hack an Anti CRSF Token protected form - previously shown in my post What Are Anti Cross-site Request Forgery Tokens And What Are They Good For? - to PowerShell.
How to hack an Anti CRSF Token from PowerShell


function global:spam-adamdotcom&#40;&#41;&#123;
&#160; # Load the assembly containing WebClientWithCookies and RegexUtilities
&#160; &#91;Reflection.Assembly&#93;::LoadFile&#40;&#40;Resolve-Path "AdamDotCom.WebClientWithCookies.dll"&#41;&#41; &#124; [...]]]></description>
			<content:encoded><![CDATA[<p>I ported the example of how to hack an Anti CRSF Token protected form - previously shown in my post <a href="http://adam.kahtava.com/journal/2009/11/25/what-are-anti-cross-site-request-forgery-tokens-and-what-are-they-good-for/">What Are Anti Cross-site Request Forgery Tokens And What Are They Good For?</a> - to PowerShell.</p>
<p><strong>How to hack an Anti CRSF Token from PowerShell</strong></p>
<div class="syntax_hilite">
<div id="csharp-15">
<div class="csharp">function global:spam-adamdotcom<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span></p>
<p>&nbsp; <span style="color: #008080;"># Load the assembly containing WebClientWithCookies and RegexUtilities</span><br />
&nbsp; <span style="color: #000000;">&#91;</span>Reflection.<span style="color: #0000FF;">Assembly</span><span style="color: #000000;">&#93;</span>::<span style="color: #0000FF;">LoadFile</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span>Resolve-Path <span style="color: #808080;">"AdamDotCom.WebClientWithCookies.dll"</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> | out-<span style="color: #0600FF;">null</span><br />
&nbsp; <br />
&nbsp; <span style="color: #008080;"># Load the assembly containing System.Web.HttpUtilitiy</span><br />
&nbsp; <span style="color: #000000;">&#91;</span><span style="color: #0600FF;">void</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#91;</span>Reflection.<span style="color: #0000FF;">Assembly</span><span style="color: #000000;">&#93;</span>::<span style="color: #0000FF;">LoadWithPartialName</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">"System.Web"</span><span style="color: #000000;">&#41;</span> | out-<span style="color: #0600FF;">null</span>&nbsp; </p>
<p>&nbsp; <span style="color: #008080;"># create a new instance of the HTTP Web Client that supports cookies</span><br />
&nbsp; $webClient = New-<span style="color: #FF0000;">Object</span> AdamDotCom.<span style="color: #0000FF;">Common</span>.<span style="color: #0000FF;">Service</span>.<span style="color: #0000FF;">Utilities</span>.<span style="color: #0000FF;">WebClientWithCookies</span></p>
<p>&nbsp; <span style="color: #008080;"># download the page that contains the Anti CRSF Token</span><br />
&nbsp; <span style="color: #000000;">&#91;</span><span style="color: #0600FF;">void</span><span style="color: #000000;">&#93;</span> $webClient.<span style="color: #0000FF;">DownloadData</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">"http://adam.kahtava.com/contact"</span><span style="color: #000000;">&#41;</span>;</p>
<p>&nbsp; <span style="color: #008080;"># use a regular expression to grab the Anti CRSF Token</span><br />
&nbsp; <span style="color: #008080;">#&nbsp; - this is an MVC site so we're looking for a token named &quot;__RequestVerificationToken_Lw__&quot;</span><br />
&nbsp; $regex = <span style="color: #808080;">"__RequestVerificationToken_Lw__=(?&lt;CRSF_Token&gt;[^;]+)"</span><br />
&nbsp; $match = <span style="color: #000000;">&#91;</span>regex<span style="color: #000000;">&#93;</span>::<span style="color: #0000FF;">matches</span><span style="color: #000000;">&#40;</span>$webClient.<span style="color: #0000FF;">ResponseHeaders</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">"Set-Cookie"</span><span style="color: #000000;">&#93;</span>, $regex<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><br />
&nbsp; $antiCrsfToken = $match.<span style="color: #0000FF;">Groups</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">"CRSF_Token"</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Captures</span><span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span></p>
<p>&nbsp; write-host <span style="color: #808080;">"`nYour Anti CRSF Token is: "</span> $antiCrsfToken</p>
<p>&nbsp; <span style="color: #008080;"># construct the message including the Anti CSRF Token</span><br />
&nbsp; $message = <span style="color: #808080;">"__RequestVerificationToken="</span> + <span style="color: #000000;">&#91;</span><span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">HttpUtility</span><span style="color: #000000;">&#93;</span>::<span style="color: #0000FF;">UrlEncode</span><span style="color: #000000;">&#40;</span>$antiCrsfToken<span style="color: #000000;">&#41;</span> +<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #808080;">"&amp;amp;fromName=Johnathon Fink"</span> +<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #808080;">"&amp;amp;fromAddress=prancesw@rmcres.com"</span> +<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #808080;">"&amp;amp;subject=Call for your diploma now"</span> +<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #808080;">"&amp;amp;body=Is your lack of a degree..."</span></p>
<p>&nbsp; <span style="color: #008080;"># send spam-spam-spam</span><br />
&nbsp; $webClient.<span style="color: #0000FF;">Headers</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">"Content-Type"</span>, <span style="color: #808080;">"application/x-www-form-urlencoded"</span><span style="color: #000000;">&#41;</span>;<br />
&nbsp; <span style="color: #000000;">&#91;</span><span style="color: #0600FF;">void</span><span style="color: #000000;">&#93;</span> $webClient.<span style="color: #0000FF;">UploadData</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">"http://adam.kahtava.com/contact/send"</span>, <span style="color: #808080;">"POST"</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">System</span>.<span style="color: #0000FF;">Text</span>.<span style="color: #0000FF;">Encoding</span><span style="color: #000000;">&#93;</span>::<span style="color: #0000FF;">UTF8</span>.<span style="color: #0000FF;">GetBytes</span><span style="color: #000000;">&#40;</span>$message<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;</p>
<p>&nbsp; write-host <span style="color: #808080;">"`nSuccess!!! Your spam has been sent.`n"</span><br />
<span style="color: #000000;">&#125;</span></div>
</div>
</div>
<p>
To run this script:</p>
<ol>
<li>Download the <a href="http://code.google.com/p/adamdotcom-script/source/browse/trunk/Scripts/PowerShell/Automated-AntiCSRF-Authentication-Script.ps1">script</a></li>
<li>Run PowerShell</li>
<li>Load the script: <code><a href="http://code.google.com/p/adamdotcom-script/source/browse/trunk/Scripts/PowerShell/Automated-AntiCSRF-Authentication-Script.ps1">.\Automated-AntiCSRF-Authentication-Script.ps1</a></code></li>
<li>Start sending spam-spam-spam: <code>PS &gt; spam-adamdotcom</code></li>
</ol>
<p>Here's the output as seen on my machine:</p>
<div class="syntax_hilite">
<div id="code-16">
<div class="code">PS C:\&gt; .\Automated-AntiCSRF-Authentication-Script.<span style="">ps1</span><br />
PS C:\&gt; spam-adamdotcom</p>
<p>Your Anti CRSF Token is:&nbsp; f54ZlHS3L1Xyl65dYd1uYYh90ygNKYmCswXJUnr0GYtgcrJdJILsQ2jyFotzc10L</p>
<p>Success!!! Your spam has been sent.</p></div>
</div>
</div>
<p></p>
<p>This example uses a derivation of the .NET Framework's <a href="http://msdn.microsoft.com/en-us/library/system.net.webclient.aspx">Web Client</a> class but with Cookies enabled, so it depends on the <a href="http://adamdotcom-services.googlecode.com/svn/trunk/AdamDotCom.Common.Service/Final-Assemblies/AdamDotCom.Common.Service.dll">AdamDotCom.Common.Service.dll</a> assembly (browse the source <a href="http://code.google.com/p/adamdotcom-services/source/browse/trunk#trunk/AdamDotCom.Common.Service/Source/Common/Utilities">here</a>). This dependency can be automatically resolved by issuing the <code>download-client</code> function that's also found within the PowerShell script.</p>
<p>Contribute, view, or download the openly available script here: <a href="http://code.google.com/p/adamdotcom-script/source/browse/trunk/Scripts/PowerShell/Automated-AntiCSRF-Authentication-Script.ps1">Automated-AntiCSRF-Authentication-Script.ps1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://adam.kahtava.com/journal/2009/12/16/hacking-an-anti-cross-site-request-forgery-tokens-csrf-with-powershell/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Twitter on PowerShell</title>
		<link>http://adam.kahtava.com/journal/2008/12/05/twitter-on-powershell/</link>
		<comments>http://adam.kahtava.com/journal/2008/12/05/twitter-on-powershell/#comments</comments>
		<pubDate>Sat, 06 Dec 2008 01:04:40 +0000</pubDate>
		<dc:creator>Adam Kahtava</dc:creator>
		
		<category><![CDATA[Open Source]]></category>

		<category><![CDATA[PowerShell]]></category>

		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://adam.kahtava.com/journal/PermaLink,guid,c66b0d9a-30ac-4d30-a104-a64f9d0a8f21.aspx</guid>
		<description><![CDATA[Adam Geras originally wrote a script in PowerShell that saves all the Twitter posts for a specific user into a file (view Mr. Geras original post here).
I built on his script and extended it to:

 Post messages to Twitter
 Retrieve Twitter replies
 View my Twitter friends conversations
 Display the classic Twitter Fail Whale when an [...]]]></description>
			<content:encoded><![CDATA[<p>Adam Geras originally wrote a script in <a href="http://en.wikipedia.org/wiki/Windows_PowerShell">PowerShell</a> that saves all the Twitter posts for a specific user into a file (<a href="http://testfirst.spaces.live.com/blog/cns%217E0657B7A0134A74%21230.entry">view Mr. Geras original post here</a>).</p>
<p>I built on his script and extended it to:</p>
<ul>
<li> Post messages to Twitter</li>
<li> Retrieve Twitter replies</li>
<li> View my Twitter friends conversations</li>
<li> Display the classic Twitter <a href="http://en.wikipedia.org/wiki/Twitter#Outages"><em>Fail Whale</em></a> when an error occurs</li>
</ul>
<h3>Screen Shots</h3>
<p>Sending a Twitter message:<br />
<img src="http://adam.kahtava.com/journal/images/blog/blog-post-twitter-powershell-tweet.png" alt="" /></p>
<p>Viewing my friends conversations:<br />
<img src="http://adam.kahtava.com/journal/images/blog/blog-post-twitter-powershell-friends.png" alt="" /></p>
<p>The classic Twitter <em>Fail Whale</em>:<br />
<img src="http://adam.kahtava.com/journal/images/blog/blog-post-twitter-powershell-fail-whale.png" alt="" /></p>
<p><em>There's something beautiful about the classic green console on a black background - I think it's about being closer to the metal. :) What do you think?</em></p>
<p>Contribute, view, or download the openly available script here: <a href="http://code.google.com/p/adamdotcom-script/source/browse/trunk/Scripts/PowerShell/Twitter.ps1">Twitter.ps1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://adam.kahtava.com/journal/2008/12/05/twitter-on-powershell/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
