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

<channel>
	<title>Feelings of White &#187; powershell</title>
	<atom:link href="http://feelingsofwhite.com/category/technical/powershell/feed/" rel="self" type="application/rss+xml" />
	<link>http://feelingsofwhite.com</link>
	<description>i wish i had raped the monkey but what i did instead was good too</description>
	<lastBuildDate>Tue, 08 Mar 2011 12:14:36 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Inside the Secrets of The Behind the Making of The Music Revealed</title>
		<link>http://feelingsofwhite.com/2009/03/inside-the-secrets-of-the-behind-the-making-of-the-music-revealed/</link>
		<comments>http://feelingsofwhite.com/2009/03/inside-the-secrets-of-the-behind-the-making-of-the-music-revealed/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 06:05:52 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[funny]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[the void]]></category>
		<category><![CDATA[writing]]></category>
		<category><![CDATA[Battlestar Galactica]]></category>
		<category><![CDATA[plug]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.com/2009/03/inside-the-secrets-of-the-behind-the-making-of-the-music-revealed/</guid>
		<description><![CDATA[Join BSG Music computer Bear McCreary on this backstage tour of the Galactica where no one knows who the frak he is.  James Callis introduces us to the "Balter is the mutherfucking shit!!!" song and Edward James Olmos does some bear impressions. Rawr! Bonus: a special feature on The Ack Attack and her Lost Recaps!]]></description>
			<content:encoded><![CDATA[<p><span>
<p><a href="http://www.theackattack.net/?cat=24" target="_blank"><img style="float: right; margin: 0px 0px 0.5em 0.5em" height="261" alt="This article brought to you by: The Ack Attack! Putting the 'ack' in 'crack' since 2005" src="http://feelingsofwhite.com/wp-content/uploads/2009/03/broughttoyoubytheackattacklostreviews.png" width="289"></a>If <a href="http://theackattack.com" target="_blank">The Ack Attack<em>!</em></a> hadn’t already <a href="http://ack-attack.livejournal.com/537505.html" target="_blank">pointed out</a> today’s video, this post wouldn’t even <em>exist</em>. Contemplate that, <span style="letter-spacing: 0.1em; position: relative; top: 0.4em"><font face="Impact">my <span style="position: relative; top: -0.1em">un</span>dead friends.</font></span>
<p>I must advise you to <big><strong>peruse Ack’s <a href="http://www.theackattack.net/?cat=24" target="_blank">weekly Lost Recaps</a></strong></big>. And this isn’t the <a href="http://feelingsofwhite.com/2008/03/congratulations-universe/">first time</a> I’ve called attention to Ack’s fine fine work screen-capping &amp; and re-captioning the latest <em>Lost</em> episodes. Drenching them as she does in delicious hilariousness.</p>
<p><strong>I am <em>really</em> enjoying <em>Lost</em> this season</strong> — <nobreak><span style="vertical-align: middle">It’s </span><span style="letter-spacing: 0em"><span style="font-size: 100%">F</span><span style="font-size: 110%">r</span><span style="font-size: 120%">a</span><span style="font-size: 130%">k</span><span style="font-size: 140%">i</span><span style="font-size: 150%">n</span><span style="font-size: 160%">g </span><span style="font-size: 170%">D</span><span style="font-size: 180%">h</span><span style="font-size: 170%">a</span><span style="font-size: 160%">r</span><span style="font-size: 150%">m</span><span style="font-size: 140%">a</span><span style="font-size: 130%">r</span><span style="font-size: 120%">f</span><span style="font-size: 110%">i</span><span style="font-size: 100%">c</span></span></span></nobreak>. After getting my weekly hit of mind-blowing island hijinks, the <a href="http://www.theackattack.net/?cat=24" target="_blank">Lost Recaps</a> are what I look forward to. <small>(and they seem to be finished by the following Sunday)</small></p>
<table style="clear: both; margin: 1em" width="500" align="center">
<tbody>
<tr>
<td>
<hr style="border-right: black 2px solid; border-top: black 2px solid; border-left: black 2px solid; border-bottom: black 2px solid"> </td>
<td style="width: 15em" align="middle"><em><small>…on with the show…</small></em></td>
<td>
<hr style="border-right: black 2px solid; border-top: black 2px solid; border-left: black 2px solid; border-bottom: black 2px solid"> </td>
</tr>
</tbody>
</table>
<p style="clear: both"><img style="clear: both; border-right: black 4px solid; border-top: black 4px solid; float: left; margin: 0px 1em 0.5em 0px; border-left: black 4px solid; border-bottom: black 4px solid" height="133" alt="Inside the Secrets of the Behind the making of the Music of Battlestar Galactica Revealed" src="http://feelingsofwhite.com/wp-content/uploads/2009/03/inside-the-secrets-of-the-behind-the-make-of-the-music-of-battlestar-galactica-bsg-revealed.png" width="240">Follow Galactica composer Bear McCreary as he exposes the seedy underbelly of BSG’s music making process.&nbsp; The running gag is that no one knows who the hell he is and he spends most of his time <span style="font-size: 75%; color: green; position: relative; top: -0.2em">$</span><span style="font-size: 75%; color: green; position: relative; top: 0.1em">$</span>paying<span style="font-size: 75%; color: green; position: relative; top: -0.2em">$</span><span style="font-size: 75%; color: green; position: relative; top: 0.1em">$</span> people to call him a creative genius and trying to get himself invited to the wrap party. </p>
<p><small style="font-variant: small-caps">Highlights Include:</small> Edward James Olmos mimicking a circus bear and James Callis forcing a reluctant McCreary to compose his <em><big><sub>♫</sub><sup>Baltar is the </sup><sub>Motherfucking Shit</sub><big>!!</big><sup>♫</sup></big></em> opus which he insists Ron Moore already loves and listens to every morning before jogging. It’s little to do with the music and more an excuse to hear things like Katee Sachoff bemoan <font style="position: relative; top: 0.1em" face="monospace">this isn’t fair, <span style="position: relative; top: 0.1em">none of us even know who the fuck this guy is</span></font> and features an impressive number of familiar and behind the screen BSG talent.</p>
<p> <center>
<div class="legioncenter" style="padding-right: 5px; padding-left: 5px; padding-bottom: 6px; margin: 0.5em 1em; width: 480px; color: white; padding-top: 6px; background-color: black"><!--<big><b>Inside the Secrets of the Behind the making of the Music of Battlestar Galactica Revealed</b></big> </p>
<p>--><small>Part 1 [length 9:21]</small> <br /><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/fxzvIlVnCPA&amp;hl=en&amp;fs=1&amp;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/fxzvIlVnCPA&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></div>
<p></center> <center></center><span id="more-472"></span></span> <center>
<div class="legioncenter" style="padding-right: 5px; padding-left: 5px; padding-bottom: 6px; margin: 0.5em 1em; width: 480px; color: white; padding-top: 6px; background-color: black"><small>Part 2 [length 8:58]</small><br /><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/cTRVs1qYXc8&amp;hl=en&amp;fs=1&amp;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/cTRVs1qYXc8&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></div>
<p></center> <center>
<div class="legioncenter" style="padding-right: 5px; padding-left: 5px; padding-bottom: 6px; margin: 0.5em 1em; width: 480px; color: white; padding-top: 6px; background-color: black"><small>Part 3 [length 4:13]</small> <br /><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/OlxGyLzeBng&amp;hl=en&amp;fs=1&amp;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/OlxGyLzeBng&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></div>
<p></center></p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2009/03/inside-the-secrets-of-the-behind-the-making-of-the-music-revealed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TortoiseSVN + Command Line</title>
		<link>http://feelingsofwhite.com/2008/01/tortoisesvn-command-line/</link>
		<comments>http://feelingsofwhite.com/2008/01/tortoisesvn-command-line/#comments</comments>
		<pubDate>Thu, 31 Jan 2008 23:38:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[TortoiseSVN]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2008/01/31/tortoisesvn-command-line/</guid>
		<description><![CDATA[TortoiseSVN is a well loved shell integration tool, and if you’re into both the Windows and the Subversion, chances are excellent that you’re already using it. But did you know this brilliant GUI has a dark side? What else would I love about Tortoise but its command line support! I finally dug in and made [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://tortoisesvn.tigris.org/">TortoiseSVN</a> is a well loved shell integration tool, and if you’re into both the Windows and the <a href="http://subversion.tigris.org/">Subversion</a>, chances are excellent that you’re already using it.  But did you know this brilliant GUI has a dark side?  What else would I love about Tortoise but its <strong>command line support</strong>!  I finally dug in and made some powershell friendly wrappers around the commands I cared about.</p>
<p>If you’re often hanging around the command line, as I do, it’s such a drag to open an explorer window, just so you can right click on a file to bring up the visual diff.  (If you can read complex diffs without the need for a gui, you’re a better dev than I)  How lovely to simply type</p>
<blockquote><p><code>tdiff myFile.txt </code></p></blockquote>
<p>and have the visual diff launch.  Or the visual log viewer, or the interactive commit dialog.  I find they go hand in hand with the already brilliant svn command set.</p>
<p>You can also get fancy.  How about bringing up the diff and/or conflict dialog for every modified or conflicted file.  Perfect for code review situations<br />
<blockquote><code>svn status | select-string "^[MC]" | %{ tdiff $_.Line.SubString(7) }</code></p></blockquote>
<p>As you’re about to see, I’m not doing much besides wrapping what’s already there.  The key points are the /notempfile (if you don’t, path might be deleted according to the docs), and that the path must be a full path.  Enjoy the idea or the code, which ever you take away</p>
<pre>
$TortoiseProc = 'C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe'

function myExpandPath($path, $prefix="path")
{
    if ($path -match "^((https?)|(svn(\+ssh)?)|(file))\:\/\/") {
        <font color="darkgray">#path has been fully specified (e.g. http://server/foo or file:///C:/foo)</font>
        return "/$prefix" + ":""$path"""
    } else {
        <font color="darkgray">#path is a local name</font>
        return "/$prefix" + ":""" + (Get-Item $path).FullName + '"'
    }
}

function RepoBrowser-TortoiseSvn ($path=".")
{
    &amp;$TortoiseProc "/command:repobrowser" (myExpandPath $path) "/notempfile"
}

function Commit-TortoiseSvn ($path=".")
{
    &amp;$TortoiseProc "/command:commit" (myExpandPath $path) "/notempfile"
}

function ConflictEditor-TortoiseSvn ($path=".")
{
    &amp;$TortoiseProc "/command:conflicteditor" (myExpandPath $path) "/notempfile"
}

function Diff-TortoiseSvn ($path=".", $path2)
{
    if ($path2 -ne $null) {
        $path2 = myExpandPath $path2 -prefix 'path2'
    }
    &amp;$TortoiseProc "/command:diff" (myExpandPath $path) $path2 "/notempfile"
}

function SmartDiff-TortoiseSvn ($path=".", $path2)
{
    <font color="darkgray">#If a file in conflict, use ConflictEditor, otherwise use Diff</font>
    if (($path2 -eq $null) -and
        (!(get-item $path).PsIsContainer) -and
        ((svn status $path)[0] -eq 'C')) {
        return ConflictEditor-TortoiseSvn $path
    }
    return Diff-TortoiseSvn -path:$path -path2:$path2
}

function Status-TortoiseSvn ($path=".")
{
    &amp;$TortoiseProc "/command:repostatus" (myExpandPath $path) "/notempfile"
}

function Log-TortoiseSvn ($path=".")
{
    &amp;$TortoiseProc "/command:log" (myExpandPath $path) "/notempfile" $strictSwitch
}

Set-Alias tstatus   Status-TortoiseSvn
Set-Alias tdiff     SmartDiff-TortoiseSvn
Set-Alias tbrowse   RepoBrowser-TortoiseSvn
Set-Alias tcommit   Commit-TortoiseSvn
Set-Alias tlog      Log-TortoiseSvn
</pre>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2008/01/tortoisesvn-command-line/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Powershell 2.0 CTP</title>
		<link>http://feelingsofwhite.com/2007/12/powershell-20-ctp/</link>
		<comments>http://feelingsofwhite.com/2007/12/powershell-20-ctp/#comments</comments>
		<pubDate>Thu, 13 Dec 2007 16:03:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[mlp]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/12/13/powershell-20-ctp/</guid>
		<description><![CDATA[Powershell 2.0 CTP has been released, download link enclosed.]]></description>
			<content:encoded><![CDATA[<p><i>ohmygod ohmygod ohmygod</i></p>
<p><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=60deac2b-975b-41e6-9fa0-c2fd6aa6bc89&amp;displaylang=en">The PowerShell goodness has evolved</a>.  I haven't installed it yet, but will do so asap.  I'm currently working up a proof of concept CVSNT to SVN conversion for our shop, so this is some good timing.</p>
<p><small>(via <a href="http://tfl09.blogspot.com/2007/11/windows-powershell-20-ctp-available-for.html">Under The Stairs</a>)</small></p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/12/powershell-20-ctp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Powershell Help Files</title>
		<link>http://feelingsofwhite.com/2007/06/powershell-help-files/</link>
		<comments>http://feelingsofwhite.com/2007/06/powershell-help-files/#comments</comments>
		<pubDate>Fri, 08 Jun 2007 20:13:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[mlp]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/06/08/powershell-help-files/</guid>
		<description><![CDATA[Print able Quick Reference Guide for your printing pleasure Graphic help file same contents as the commandline help, bundled as a searchable windows help file with hyperlinks and fun such goodness. Online Quick Reference Page for online reference (first two via Powershell Guy)]]></description>
			<content:encoded><![CDATA[<ul>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=df8ed469-9007-401c-85e7-46649a32d0e0&amp;displaylang=en&amp;tm">Print able Quick Reference Guide</a> for your printing pleasure</p>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=3b3f7ce4-43ea-4a21-90cc-966a7fc6c6e8&amp;displaylang=en&amp;tm">Graphic help file</a> same contents as the commandline help, bundled as a searchable windows help file with hyperlinks and fun such goodness.
<li><a href="http://channel9.msdn.com/wiki/default.aspx/Channel9.WindowsPowerShellQuickStart">Online Quick Reference Page</a> for online reference
</ul>
<p>(first two via <a href="http://thepowershellguy.com/blogs/posh/archive/2007/06/03/powershell-quick-reference.aspx">Powershell </a> <a href="http://thepowershellguy.com/blogs/posh/archive/2007/06/03/powershell-quick-reference.aspx">Guy</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/06/powershell-help-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Download Heroes Comix with the PowerShell Goodness</title>
		<link>http://feelingsofwhite.com/2007/05/download-heroes-comix-with-the-powershell-goodness/</link>
		<comments>http://feelingsofwhite.com/2007/05/download-heroes-comix-with-the-powershell-goodness/#comments</comments>
		<pubDate>Wed, 02 May 2007 15:45:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[the arts]]></category>
		<category><![CDATA[heroes]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/05/02/download-heroes-comix-with-the-powershell-goodness/</guid>
		<description><![CDATA[Are you a Heroes fan? One that's not afraid to run a powershell script? And someone who reads my blog?&#160; If you're still reading, then today's your lucky day!&#160; Here's a snippet I used to download the supplementary heroes comics.&#160; Clicking hyperlinks with a mouse is for chumps! I didn't bother to figure out how [...]]]></description>
			<content:encoded><![CDATA[<p>Are you a Heroes fan? One that's not afraid to run a powershell script? And<br />
someone who reads my blog?&nbsp; If you're still reading, then today's your<br />
lucky day!&nbsp; Here's a snippet I used to download the supplementary heroes<br />
comics.&nbsp; Clicking hyperlinks with a mouse is for <i>chumps!</i> I didn't<br />
bother to figure out how to auto-detect the number of available novels, so you<br />
just gotta change the $number variable yerself.&nbsp; </p>
<pre style="overflow:scroll;max-width:600px;">
<font face="Courier New">$numbers = 1..31 <font color="#808080">#check out <a href="http://www.nbc.com/Heroes/novels/novels_library.shtml">http://www.nbc.com/Heroes/novels/novels_library.shtml</a> to see how many are online</font>

$downloadFolder = &quot;c:\Download\HeroesNovels&quot; ;

$downloadFolder | %{ if (!(test-path $_)) { md $_ | out-null } } ;

$webclient = new-object System.Net.WebClient ;
$numbers = $numbers | %{ $_.ToString().PadLeft(3, &quot;0&quot;) } |
&nbsp;&nbsp;&nbsp; where { (!(test-path &quot;$downloadFolder\Heroes_novel_$_.pdf&quot;))
}

if ($numbers) { <font color="#808080">#FYI: same as saying ($numbers -ne $null)
</font>&nbsp;&nbsp;&nbsp; $i=0;
&nbsp;&nbsp;&nbsp; $numbers | %{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $i++;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; write-progress &quot;Downloading&quot; &quot;Heroes&quot; -percent ($i / $numbers.count * 100) ;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $webclient.DownloadFile(&quot;http://www.nbc.com/Heroes/novels/downloads/Heroes_novel_$_.pdf&quot;, &quot;$downloadFolder\Heroes_novel_$_.pdf&quot;) ;
&nbsp;&nbsp;&nbsp; } ;
&nbsp;&nbsp;&nbsp; Write-Progress &quot;Downloading&quot; &quot;Heroes&quot; -completed
}</font></pre>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/05/download-heroes-comix-with-the-powershell-goodness/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Look what you can do in Powershell: FTP!</title>
		<link>http://feelingsofwhite.com/2007/03/look-what-you-can-do-in-powershell-ftp/</link>
		<comments>http://feelingsofwhite.com/2007/03/look-what-you-can-do-in-powershell-ftp/#comments</comments>
		<pubDate>Wed, 14 Mar 2007 22:07:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[ftp]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/03/14/look-what-you-can-do-in-powershell-ftp/</guid>
		<description><![CDATA[Imagine my surprise when my friendly neighbourhood I.T. fellow told me a ftp command line client built into windows. Man, I haven't done command line FTP since high school. But after finding a good ftp command reference, well, of course, I couldn't resist trying to concoct an unholy marriage between ftp and powershell. $listOfFiles = [...]]]></description>
			<content:encoded><![CDATA[<p>Imagine my surprise when my friendly neighbourhood I.T. fellow told me a ftp command line client built into windows. Man, I haven't done command line FTP since high school. But after finding a <a href="http://www.nsftools.com/tips/MSFTP.htm">good ftp command reference</a>, well, of course, I couldn't resist trying to concoct an unholy marriage between ftp and powershell.</p>
<p><code><br />
$listOfFiles = "open <span style="font-style:italic;">secret.ftplocation.com</span><br />
user <span style="font-style:italic;">username password</span><br />
binary<br />
cd <span style="font-style:italic;">LocationICareAbout</span><br />
mdir * -" | ftp -i -n | where {$_.Trim() -ne "" } | where {$_.SubString(24,5) -ne "&lt;DIR&gt;"} | %{ $_.SubString(39) }<br />
</code></p>
<p>To explain: FTP can accepted piped-input, but I realized instead of having to put my answerfile into an actual file, I could just use powershell's ability to have multi-line strings and variables pumped right in.</p>
<p>The above text is logging into the ftp location client of yer choice and getting a file listing (the <font face="courier">msdir</font> bit). As I only cared about files, I ignore the "&lt;DIR&gt;"s, and with a bit of basic string manipulation, <span style="font-style:italic;">viola!</span> I've got a list of all files in a given directory</p>
<p><code><br />
$cmd = "open <span style="font-style:italic;">secret.ftplocation.com</span><br />
user <span style="font-style:italic;">username password</span><br />
binary<br />
cd <span style="font-style:italic;">LocationICareAbout</span><br />
" +<br />
($listOfFiles | %{ "get ""$_""`n" })</p>
<p>$cmd | ftp -i -n<br />
</code></p>
<p>To explain: This final bit turns the list of files into another literal string, which says<br />
&nbsp;&nbsp; get FileX<br />
&nbsp;&nbsp; get FileY<br />
etc, which gets piped to <font face="courier">ftp</font>. the end result is a download of all the files in the directory to my hard drive. Of course, you could get creative and do all sorts of manipulations to <font face="courier">$listOfFiles</font>, if that's what turns you on.</p>
<p>I've got another nearly identical script where instead of "get" I say "delete", same concepts. And got another one that builds up <font face="courier">$listOfFiles</font> from a local directory (via <font face="courier">ls</font>) and uses "put" to upload all files from a local dir to the remote dir. You get the idea.</p>
<p><font face="courier">ftp</font> supposedly supports a <font face="courier">-s:filename</font> but I couldn't get it to work. And really, who would want to? Inlining the ftp commands is just so damn sexy!</p>
<p>After Thoughts:<br />
(wherein I blather on and on and get less technical)</p>
<p>Man I had a blast doing this. Within about two hours I'd gone from ftp n00b to having working scripts that actually helped me do my job much faster. I'd been using my <a href="http://www.download.com/3000-2356-10122208.html">favorite abadonware ftp gui</a> to do uploads/downloads and now I had scripts that did it all faster and consistently. </p>
<p>A nice bite-sized problem involving unknown, but good, tools combined with the joy of the admin development model meant figuring it all out was fun for me. The scripts are pretty basic, really, but figuring junk out makes me go a big rubbery one :P</p>
<p>Really, it's that lovely <a href="http://blogs.msdn.com/powershell/archive/2007/01/01/the-admin-development-model-and-send-snippet.aspx">admin development model</a> more than anything else I think I love. (I've done lots of it over my life, but only ever heard the phrase thanks to powershell blogs.) I have built up so many extrodinarily useful scripts over the last few months, by typing commands into a stupid blue window until they worked, then pasting them into notepad and saving it.</p>
<p>Within another month or two I'll have fully automated processes at my job that used to take up days and days and days of peoples times. Of course, it would only take 1 or 2 weeks of dedicated time to do it all, but we all know how that goes.. no one's going to give you official time to fix anything, not that you've got time when everything needs to be done yesterday, so you gotta slip it under the wire. But then! To the rescue! Comes that lovely admin development model (some people might call it agile development too), where I don't have to do it all at once. I just have to add a few more lines to my powershell scripts here and there, and one day *poof* the entire process is a repeatable automated one-liner instead of a clusterfuck of a timewasting error prone inconsistent undocumented manual process.</p>
<p>All part of my grand plan for world domination. One dirty hack at a time.</p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/03/look-what-you-can-do-in-powershell-ftp/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>&quot;*.*&quot; -ne &quot;*&quot; (or, old dos habits die hard)</title>
		<link>http://feelingsofwhite.com/2007/02/ne-or-old-dos-habits-die-hard/</link>
		<comments>http://feelingsofwhite.com/2007/02/ne-or-old-dos-habits-die-hard/#comments</comments>
		<pubDate>Mon, 12 Feb 2007 23:28:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[wtf]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/02/12/ne-or-old-dos-habits-die-hard/</guid>
		<description><![CDATA[# Setup Demonstration Files - Erase Existing Files rd -recurse -force c:\LogFiles rd -recurse -force c:\Drawings # Setup Demonstration Files md c:\LogFiles echo foo &#124; out-file c:\LogFiles\foo.txt md C:\LogFiles\SubDir cp c:\LogFiles\foo.txt c:\LogFiles\SubDir md c:\Drawings # Does not work as expected cp -recurse -force c:\LogFiles\*.* c:\Drawings #only copies foo.txt # Does what you want it to [...]]]></description>
			<content:encoded><![CDATA[<p>#  Setup Demonstration Files - Erase Existing Files<br />
<span style="font-family:courier new;">    rd -recurse -force c:\LogFiles</span><br />
<span style="font-family:courier new;">    rd -recurse -force c:\Drawings </span><br />
# Setup Demonstration Files<br />
<span style="font-family:courier new;">    md c:\LogFiles</span><br />
<span style="font-family:courier new;">    echo foo | out-file c:\LogFiles\foo.txt</span><br />
<span style="font-family:courier new;">    md C:\LogFiles\SubDir</span><br />
<span style="font-family:courier new;">    cp c:\LogFiles\foo.txt c:\LogFiles\SubDir</span><br />
<span style="font-family:courier new;">    md c:\Drawings</span><br />
# Does not work as expected<br />
<span style="font-family:courier new;">    cp -recurse -force c:\LogFiles\*.* c:\Drawings  #only copies foo.txt</span><br />
# Does what you want it to<br />
<span style="font-family:courier new;">    cp -recurse -force c:\LogFiles\* c:\Drawings    #copies SubDir + contents</span></p>
<p>Damn, old dos habits die hard.  In fact, it makes perfect sense ("SubDir" does not contain a ".", if it did it would be copied).  But still, I wish someone else had spent that hour or two debuging the problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/02/ne-or-old-dos-habits-die-hard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good Goddamn, Powershell Sucks!</title>
		<link>http://feelingsofwhite.com/2007/02/good-goddamn-powershell-sucks/</link>
		<comments>http://feelingsofwhite.com/2007/02/good-goddamn-powershell-sucks/#comments</comments>
		<pubDate>Tue, 06 Feb 2007 15:46:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[wtf]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/02/06/good-goddamn-powershell-sucks/</guid>
		<description><![CDATA[Apparently Blogger sucks too, 'cause I can't get this picture to display at full resolution. You'll have to click to read it: In case you can't be bothered, powershell's remove-item crashes with "The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the [...]]]></description>
			<content:encoded><![CDATA[<p>Apparently Blogger sucks too, 'cause I can't get this picture to display at full resolution. You'll have to click to read it: <br /><a href="http://bp0.blogger.com/_mingpt0NCso/RcijpUs5ESI/AAAAAAAAAAw/wrP3-z2Ozqg/s1600-h/PowerShellSucks-LongFileNames.PNG"><img style="cursor:pointer;" src="http://bp0.blogger.com/_mingpt0NCso/RcijpUs5ESI/AAAAAAAAAAw/wrP3-z2Ozqg/s400/PowerShellSucks-LongFileNames.PNG" alt="" border="0" /></a></p>
<p>In case you can't be bothered, powershell's remove-item crashes with<br />
"The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters."<br />
Then cmd.exe's rd /s /q works just fine. <span style="font-style:italic;">cmd.exe</span>.</p>
<p>Seriously. How. The. Fuck. Does this ship? How the <span style="font-style:italic;">fuck</span> am I unable to delete files that the Operating System will allow me to create? When cmd.exe <span style="font-style:italic;">works</span>? I'm sure there's a really interesting reason why this error happens. Some bizarre technical reason, or, more likely, some political tale about how people wanted to fix it, and couldn't. You know, the type of stuff that makes <a href="http://thedailywtf.com">the daily wtf</a> a popular site. But I don't care. Not right now.</p>
<p>Right now, I want Powershell to work at least as good as what it desires to replace.</p>
<p>I'm thinking there's a solution involving <span style="font-family:courier new;">set-alias rm</span>, but I haven't coded it yet... (probably won't either)</p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/02/good-goddamn-powershell-sucks/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Look what you can do in PowerShell</title>
		<link>http://feelingsofwhite.com/2007/01/look-what-you-can-do-in-powershell/</link>
		<comments>http://feelingsofwhite.com/2007/01/look-what-you-can-do-in-powershell/#comments</comments>
		<pubDate>Thu, 18 Jan 2007 05:03:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[testpoint]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/01/18/look-what-you-can-do-in-powershell/</guid>
		<description><![CDATA[Launch hidden IE windows, invoke an exe and wait for completion, download RSS Feeds and web contents, upload to flickr, invoke script blocks from C#.  OMG I'll faint at all the cool things you can do]]></description>
			<content:encoded><![CDATA[<p>Launching a (potentially hidden) internet explorer application <small>(thanks <a href="http://abhishek225.spaces.live.com/Blog/cns%2113469C7B7CE6E911%21165.entry">Abhishek</a>)</small></p>
<p class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">$a = new-object -com InternetExplorer.Application    <br />$a.visible=$true     <br />$a.Navigate2(&quot;http://www.microsoft.com&quot;)</p>
<p>What's the equivalent to <span style="font-family: courier new">cmd.exe</span>'s <span style="font-family: courier new">start /wait</span> command <small>(thanks <a href="http://thepowershellguy.com/blogs/posh/archive/2007/01/16/powershell-the-admin-development-model.aspx">PowerShell Guy</a>)</small></p>
<p class="legioncode" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">$notepad = [System.Diagnostics.Process]::Start( &quot;notepad.exe&quot; )    <br />$notepad.WaitForExit(2000) #wait 2 seconds     <br />$notepad.WaitForExit() #wait forever     <br /># Note: <a href="http://www.codeplex.com/PowerShellCX/Wiki/View.aspx?title=PSCX%20Features">CodePlex has a Start-Process</a> cmdlet that looks promising </p>
<p><span id="more-90"></span></p>
<p>Retrieving Version Numbers from DLLs and EXEs <small>(thanks <a href="http://jtruher.spaces.live.com/Blog/cns%217143DA6E51A2628D%21125.entry">Time is an illusion</a>)</small></p>
<p class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">ls c:\windows\*.exe | get-fileversion</p>
<p>Download from an RSS Feed <small>(thanks <a href="http://abhishek225.spaces.live.com/Blog/cns%2113469C7B7CE6E911%21134.entry">Abhishek</a>)</small></p>
<p class="legioncode" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">#Create the Service Endpoint Url    <br />$url=(&quot;http://xml.weather.yahoo.com/forecastrss?p=&quot; + &quot;90210&quot;)     <br />#download the rss feed and cast to xml     <br />$webclient = new-object System.Net.WebClient     <br />$weatherData=[xml]$webclient.DownloadString($url)     <br />echo $weatherData.rss.Channel.item.Title</p>
<p>Or just download a website contents</p>
<p class="legioncodesnip">$webclient = new-object System.Net.WebClient    <br />$webclient.DownloadString(&#8221;http://server/location&#8221;)</p>
<p>Someone figured out how to <a href="http://abhishek225.spaces.live.com/Blog/cns%2113469C7B7CE6E911%21285.entry">upload files to fickr</a> via PowerShell. Haha! Neat!</p>
<p><a href="http://blogs.msdn.com/powershell/archive/2006/04/25/583250.aspx">Invoking Script Blocks from C#</a> looks simple&#8230; as long as you know how. <small>(thanks <a href="http://blogs.msdn.com/powershell/archive/2006/04/25/583250.aspx">Windows PowerShell</a>)</small></p>
<p>try <a href="http://www.codeplex.com/PowerShellCX/Project/FileDownload.aspx?DownloadId=4583">Installing CodePlex</a> for things lots of <a href="http://www.codeplex.com/PowerShellCX/Wiki/View.aspx?title=PSCX%20Features">useful new commands</a>. Some of them, like Set-FileDate (touch), Out-Clipboard and Test-Xml should just get bundled in by default.</p>
<p>You can <a href="http://www.sapienpress.com/powershell.pdf">trap and re-throw exceptions</a>. The documentation seems non-existant, but someone was kind enough to release a chapter of their book for free. <small>(Thanks <a href="http://blogs.msdn.com/powershell/archive/2006/12/29/documenting-trap-and-throw.aspx">Windows PowerShell</a>)</small></p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/01/look-what-you-can-do-in-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My First PowerShell</title>
		<link>http://feelingsofwhite.com/2007/01/my-first-powershell/</link>
		<comments>http://feelingsofwhite.com/2007/01/my-first-powershell/#comments</comments>
		<pubDate>Tue, 16 Jan 2007 01:57:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/01/16/my-first-powershell/</guid>
		<description><![CDATA[The PowerShell team once requested everyone to blog your initial powershell experiences, and after a personal appeal, how can I refuse!]]></description>
			<content:encoded><![CDATA[<p>The PowerShell team once requested everyone to <a href="http://blogs.msdn.com/powershell/archive/2007/01/06/blog-your-initial-powershell-experiences.aspx">blog your initial powershell experiences</a>, and after a <a href="http://feelingsofwhite.com/2007/01/starting-out-in-powershell/#comment-19">personal appeal</a>, how can I refuse! I thought maybe enough time had passed that they weren't interested. <small>(maybe I'll even get more <a href="http://feelingsofwhite.com/2007/01/powershell-script-to-edit-profile/#comment-18">ego boosting posts</a>. Can I believe stuff like that? I'm new to blogs. But it's a fun thought)</small></p>
</p>
<p><span id="more-89"></span></p>
<p>I was already a big <a href="http://en.wikipedia.org/wiki/Anders_Hejlsberg">.</a>Net fan and had heard (but forgotten) about PowerShell until our IT guy suggested it for a problem I was having. The hype was promising (object manipulation instead of string parsing! egads!). I read lots, the install was simple and I started playing around. After a few days I forced myself to switch my always-on shell window to PowerShell instead of cmd.exe.</p>
<p>The manuals that came were helpful to start, although I learned most of the basics from online articles. I wish a more complete user manual (that had syntax examples of scripts for example) would come by default. It feels like the product shipped without help. <span style="font-style: italic">Although</span>, the <span style="font-family: courier new">get-help</span> command within PowerShell is <span style="font-weight: bold">fantastic</span>. You guys did an <span style="font-style: italic">awesome</span> job with the contents of <span style="font-family: courier new">get-help</span>.</p>
<p>As a asp.net developer I was more interested in the file-manipulation stuff that could help us with out daily build and .net1.1 -&gt; 2.0 migration. Within less then 2 day I switched us from .bat files to .ps1 files, PowerShell was that good. It saved me time and gave me new options almost instantly. It was the reason I first started this blog.</p>
<p>I love that everything is .Net objects, I love the piping of commands ala unix. It's like being able to work with sql-like commands (ie, set operations) but with any .net object -- fantastic! It scaled from quick &amp; dirty admin-style scripts to full programatic logic control features, exceptions.</p>
<p>And so perl like. Ugh. That took me a while to get over. Why is the command &quot;.&quot; instead of a descriptive &quot;include&quot; keyword? to continue the glorious cryptic command-line traditions?</p>
<p>Oh, and the biggest headache I've had thus far? Calling existing command-line tools from powershell. Passing parameters with spaces always seems to break things as PowerShell interprets variables it's way, instead of the way my mental-model expects them too. Which, I guess, is more .bat file like; expecting environment variable-expansion. So, given that you've got a file called listparams.bat:</p>
<p class="legioncodesnip" style="font-family: courier new">echo parameters were %*</p>
<p>and the command</p>
<p class="legioncodesnip" style="font-family: courier new">.\listparams.bat -buildfile:hi.txt</p>
<p>in cmd.exe, it yeilds</p>
<p class="legioncodesnip" style="font-family: courier new">parameters were -buildfile:hi.txt</p>
<p> but in Powershell.exe it yields
</p>
<p class="legioncodesnip" style="font-family: courier new">parameters were -buildfile: hi.txt</p>
<p>notice the space in the output.</p>
<p>These subtle differences are very frustrating. This particular example is painful when using <a href="http://nant.sourceforge.net/">nant</a> and it's <span style="font-family: courier new">-buildfile:</span> parameter.</p>
<p>Overall I like PowerShell though. Fan-frakking-tastic.</p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/01/my-first-powershell/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pithy PowerShell</title>
		<link>http://feelingsofwhite.com/2007/01/pithy-powershell/</link>
		<comments>http://feelingsofwhite.com/2007/01/pithy-powershell/#comments</comments>
		<pubDate>Fri, 12 Jan 2007 22:12:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[job]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/01/12/pithy-powershell/</guid>
		<description><![CDATA[Basic file creation, compare directories, launch browsers, grab information from svn and a few more brief scripts]]></description>
			<content:encoded><![CDATA[<p>Here's some powershell examples from the work I've been doing over the last few days at work. Just some simple one-liners I demoed to show the power of powershell to scratch my own personal itches.</p>
<p>Generate list of .wiki files into a directory listing text file</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">&quot;DevPlan&quot;,&quot;GeoWiki&quot; | %{ ls &quot;$_\*.wiki&quot; &gt; ($_ + &quot;List.txt&quot;) } ; ls</div>
<p>BUT. It's better to use sc (set-content) to write non-utf16, so filesize is smaller and controllable and non-binary for svn (thanks <a href="http://ps1.soapyfrog.com/2007/01/09/text-and-path-gotchas/">soapyfrog</a>)</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">&quot;DevPlan&quot;,&quot;GeoWiki&quot; | %{ ls &quot;$_\*.wiki&quot; | set-content ($_ + &quot;List.txt&quot;) } ; ls</div>
<p>Make a variable with files that exist in both the DevPlan and GeoWiki sub-directory</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">$OverlappingFiles = ls &quot;DevPlan\*.wiki&quot; | %{ if (test-path (join-path GeoWiki $_.Name)) { $_ } }</div>
<p>whow, that &quot;if&quot; statement is clunky. it's better to use where to filter out common files</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">$OverlappingFiles2 = $OverlappingFiles | where { !($_.Name -eq &quot;_ContentBaseDefinition.wiki&quot; -or $_.Name -eq &quot;HomePage.wiki&quot;) }</div>
<p>Launch those files as FlexWiki-compatible browser URLs</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">$OverlappingFiles2 | %{ &amp;$iexplore (&quot;http://m93808/Flexwiki/default.aspx/DevPlan/&quot; + $_.Name.Substring(0, $_.Name.Length - 5)) }</div>
<p>Cache applicationLaunch 10 copies of a url, for both for two sub-domains (Fellow T.G.'ers should peep this)</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">&quot;www1&quot;, &quot;www2&quot; | %{$who=$_ ; 1..10 | %{ &amp;$iexplore (&quot;http://&quot; + $who + &quot;.SomeCompany.com/SomeApps&quot;) }}</div>
<p>Determine the svn revision and url of the current directory</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">(svn info | select-string &quot;revision:*&quot;).Line.SubString(10)   <br />$svnUrl = (svn info | select-string &quot;url:*&quot;).Line.SubString(5) ; $svnUrl </div>
<p>Delete any non-svn-controlled Files</p>
<div class="legioncodesnip" style="margin-left: 3em; color: black; font-family: courier; background-color: lightgrey">svn status | select-string &quot;^\?&quot; | foreach { rm -force -recurse $_.Line.SubString(7) }</div>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/01/pithy-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unit Testing in PowerShell</title>
		<link>http://feelingsofwhite.com/2007/01/unit-testing-in-powershell/</link>
		<comments>http://feelingsofwhite.com/2007/01/unit-testing-in-powershell/#comments</comments>
		<pubDate>Fri, 12 Jan 2007 04:59:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/01/12/unit-testing-in-powershell/</guid>
		<description><![CDATA[Check it out if you're into that sort of thing]]></description>
			<content:encoded><![CDATA[<p>Wow, <a href="http://testfirst.spaces.live.com/blog/">unit testing in powershell</a>. And other <a href="http://testfirst.spaces.live.com/blog/cns%217E0657B7A0134A74%21136.entry">testing ideas</a>. I think it's cool, but I wonder if I'll ever make myself honestly do any unit testing on stuff that always starts out as quick and dirty scripts. Not that I don't think it's cool. Check it out if you're into that sort of thing.</p>
<p><small>(via <a href="http://blogs.msdn.com/powershell/archive/2007/01/09/windows-powershell-for-testers.aspx">Windows PowerShell</a>)</small></p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/01/unit-testing-in-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Powershell Invaders</title>
		<link>http://feelingsofwhite.com/2007/01/powershell-invaders/</link>
		<comments>http://feelingsofwhite.com/2007/01/powershell-invaders/#comments</comments>
		<pubDate>Mon, 08 Jan 2007 21:42:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[game]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/01/08/powershell-invaders/</guid>
		<description><![CDATA[Some crazy tallented fellow renade space invaders.  In powershell.]]></description>
			<content:encoded><![CDATA[<p><a href="http://ps1.soapyfrog.com/2007/01/02/space-invaders/"><img style="float: right; margin: 0px 0px 10px 10px" height="258" alt="Space Invaders, done in Powershell script" src="http://feelingsofwhite.com/wp-content/uploads/2008/05/powershellinvaders.png" width="320" border="0" /></a> Writing <a href="http://ps1.soapyfrog.com/2007/01/02/space-invaders/">Space Invaders in Powershell</a> is so impressive, and yet so wrong. Although, as someone who once <a href="http://www.analogcoast.com/">co</a>-authored a BBS-system in <a href="http://en.wikipedia.org/wiki/4DOS">4dos</a> batch files, I love it.</p>
<p><small>(via <a href="http://thepowershellguy.com/blogs/posh/archive/2007/01/02/powershell-space-invaders.aspx">The Powershell Guy</a>)</small></p>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/01/powershell-invaders/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Starting out in powershell</title>
		<link>http://feelingsofwhite.com/2007/01/starting-out-in-powershell/</link>
		<comments>http://feelingsofwhite.com/2007/01/starting-out-in-powershell/#comments</comments>
		<pubDate>Sat, 06 Jan 2007 06:57:00 +0000</pubDate>
		<dc:creator>Legion</dc:creator>
				<category><![CDATA[powershell]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[mlp]]></category>

		<guid isPermaLink="false">http://feelingsofwhite.wordpress.com/2007/01/06/starting-out-in-powershell/</guid>
		<description><![CDATA[Links to various quick references, blogs and helpfile sites I've found for powershell]]></description>
			<content:encoded><![CDATA[<p>Link to <a href="http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx">Install Powershell</a>.</p>
<p>Printable documentation is really sparse (it includes a quickstart guide and a &quot;user guide&quot;, which is missing lots of stuff), but the documentation <span style="font-style: italic">within</span> the powershell on individual commands is really very very good. I listed the powershell blogs I subscribing to below.. I've found them helpful at times, but it's kinda hit-or-miss. The biggest problem I've had is just discovering the basics of how to do things (how do I define a function, how do I make a .ps1 file that accepts parameters (param statement, just like in functions)). But it's totally worth it. Powershell roxors!</p>
<p>Good web pages:</p>
<ul>
<li><a href="http://www.windowsdevcenter.com/pub/a/windows/2006/11/07/top-10-tips-for-using-windows-powershell.html?page=1">good first read</a> </li>
<li><a href="http://channel9.msdn.com/wiki/default.aspx/Channel9.WindowsPowerShellQuickStart">awesome quick reference</a> </li>
<li><a href="http://del.icio.us/jameslikesbeer/powershell">A few more powershell webpages I've tagged</a> </li>
<li><a href="http://www.microsoft.com/technet/scriptcenter/scripts/msh/default.mspx?mfr=true">Script repository that's in its infancy, I haven't used it, but sysadmin/it types might find interesting</a>      </li>
</ul>
<p>Official Blog RSS link</p>
<ul>
<li>http://blogs.msdn.com/powershell/rss.xml</li>
</ul>
<p>Other Blogs RSS links I'm using right now:</p>
<ul>
<li>http://jtruher.spaces.live.com/feed.rss </li>
<li>http://mybsinfo.blogspot.com/feeds/posts/default </li>
<li>http://abhishek225.spaces.live.com/feed.rss </li>
<li>http://monadblog.blogspot.com/feeds/posts/default     </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://feelingsofwhite.com/2007/01/starting-out-in-powershell/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

