document.write('\
<div class="poshcode code posh">\
<style type="text/css">\
.posh li.li2, .posh li.li1 { list-style-type:decimal-leading-zero; white-space:nowrap;}');
document.write(".syntax .posh { overflow: auto; background-color:#EAEAEA; border:1px solid #DDDDDD; border-width: 1px 1px 0px 1px;}\
.syntax .poshcredit {\
background-color:#EAEAEA;\
border-bottom:1px solid #DDDDDD;\
color:#666666;\
font-size:85%;\
overflow:hidden;\
padding:0.5em 1em;\
}");
document.write("/**\
 * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\
 * (http://qbnz.com/highlighter/ and http://geshi.org/)\
 */\
.posh .de1, .posh .de2 {font: normal normal 1em/1.2em Consolas, 'Bitstream Vera Sans Mono', 'Courier New', monospace; margin:0; padding:0; background:none; vertical-align:top;}\
.posh  {font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', monospace;}\
.posh .imp {font-weight: bold; color: red;}\
.posh li, .posh .li1 {background: #ffffff;}\
.posh .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}\
.posh .li2 {background: #f8f8f8;}\
.posh .kw1 {color: #666699; font-weight: bold;}\
.posh .kw2 {color: #333399; font-weight: bold; font-style: italic;}\
.posh .kw3 {color: #003366; font-weight: bold;}\
.posh .kw4 {color: #660033;}\
.posh .co1 {color: #666666; font-style: italic;}\
.posh .coMULTI {color: #666666; font-style: italic;}\
.posh .es0 {color: #000099; font-weight: bold;}\
.posh .br0 {color: #333;}\
.posh .sy0 {color: #66cc66;}\
.posh .st0 {color: #009900;}\
.posh .nu0 {color: #cc66cc;}\
.posh .me1 {color: #003366;}\
.posh .me2 {color: #003366;}\
.posh .re0 {color: #0066cc; font-style: italic;}\
.posh .re1 {font-style: normal;}\
.posh .re2 {color: #000066;}\
.posh .re3 {color: #660033; font-weight: bold;}\
.posh .re4 {color: #003366; font-weight: bold;}\
.posh span.xtra { display:block; }\
");
document.write('</style>');
document.write('<div class="syntax"><div class="posh" style="font-family: Consolas, \'Bitstream Vera Sans Mono\', \'Courier New\', monospace;"><ol><li class="li1"><div class="de1"><span class="co1"># Run-Defrag</span></div></li>\
<li class="li2"><div class="de2"><span class="co1"># Defragments the targeted hard drives.</span></div></li>\
<li class="li1"><div class="de1"><span class="co1">#</span></div></li>\
<li class="li2"><div class="de2"><span class="co1"># Args:</span></div></li>\
<li class="li1"><div class="de1"><span class="co1"># &nbsp; $server: A target Server 2003 or 2008 system</span></div></li>\
<li class="li2"><div class="de2"><span class="co1"># &nbsp; $drive: An optional drive letter. &nbsp;If this is blank then all </span></div></li>\
<li class="li1"><div class="de1"><span class="co1"># &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; drives are defragmented</span></div></li>\
<li class="li2"><div class="de2"><span class="co1"># &nbsp; $force: If this switch is set then a defrag will be forced</span></div></li>\
<li class="li1"><div class="de1"><span class="co1"># &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; even if the drive is low on space</span></div></li>\
<li class="li2"><div class="de2"><span class="co1">#</span></div></li>\
<li class="li1"><div class="de1"><span class="co1"># Returns:</span></div></li>\
<li class="li2"><div class="de2"><span class="co1"># &nbsp; The result description for each drive.</span></div></li>\
<li class="li1"><div class="de1">&nbsp;</div></li>\
<li class="li2"><div class="de2"><span class="kw1">function</span> Run<span class="sy0">-</span>Defrag <span class="br0">&#123;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; <span class="kw1">param</span><span class="br0">&#40;</span><span class="re4"><span class="br0">&#91;</span><span class="kw3">string</span><span class="br0">&#93;</span></span><span class="re3">$server</span>, <span class="re4"><span class="br0">&#91;</span><span class="kw3">string</span><span class="br0">&#93;</span></span><span class="re3">$drive</span>, <span class="re4"><span class="br0">&#91;</span><span class="kw1">switch</span><span class="br0">&#93;</span></span><span class="re3">$force</span><span class="br0">&#41;</span></div></li>\
<li class="li2"><div class="de2">&nbsp;</div></li>\
<li class="li1"><div class="de1">&nbsp; <span class="re4"><span class="br0">&#91;</span><span class="kw3">string</span><span class="br0">&#93;</span></span><span class="re3">$query</span> <span class="sy0">=</span> <span class="st0">\'Select * from Win32_Volume where DriveType = 3\'</span></div></li>\
<li class="li2"><div class="de2">&nbsp;</div></li>\
<li class="li1"><div class="de1">&nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re3">$drive</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="re3">$query</span> <span class="sy0">+=</span> <span class="st0">&quot; And DriveLetter LIKE \'$drive%\'&quot;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp;</div></li>\
<li class="li1"><div class="de1">&nbsp; <span class="re3">$volumes</span> <span class="sy0">=</span> <span class="re0">Get-<span class="re1">WmiObject</span></span> <span class="re2">-Query</span> <span class="re3">$query</span> <span class="re2">-ComputerName</span> <span class="re3">$server</span></div></li>\
<li class="li2"><div class="de2">&nbsp;</div></li>\
<li class="li1"><div class="de1">&nbsp; <span class="kw1">foreach</span> <span class="br0">&#40;</span><span class="re3">$volume</span> <span class="kw1">in</span> <span class="re3">$volumes</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">&quot;Defragmenting $($volume.DriveLetter)...&quot;</span> <span class="re2">-noNewLine</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="re3">$result</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="re3">$volume</span>.<span class="me1">Defrag</span><span class="br0">&#40;</span><span class="re3">$force</span><span class="br0">&#41;</span><span class="br0">&#41;</span>.<span class="me1">ReturnValue</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw1">switch</span> <span class="br0">&#40;</span><span class="re3">$result</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="nu0">0</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Success\'</span><span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="nu0">1</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Access Denied\'</span><span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="nu0">2</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Not Supported\'</span><span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="nu0">3</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Volume Dirty Bit Set\'</span><span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="nu0">4</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Not Enough Free Space\'</span><span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="nu0">5</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Corrupt MFT Detected\'</span><span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="nu0">6</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Call Cancelled\'</span><span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="nu0">7</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Cancellation Request Requested Too Late\'</span><span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="nu0">8</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Defrag In Progress\'</span><span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="nu0">9</span> &nbsp;<span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Defrag Engine Unavailable\'</span><span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="nu0">10</span> <span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Defrag Engine Error\'</span><span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="nu0">11</span> <span class="br0">&#123;</span><span class="re0">Write-<span class="re1">Host</span></span> <span class="st0">\'Unknown Error\'</span><span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>\
</ol></div>');document.write('<div class="poshcredit"><a style="float:right;" href="http://poshcode.org/get/652" title="download file">download</a><a href="http://poshcode.org/?show=652" title="full view">This Script</a> brought to you by <a href="http://PoshCode.org">PoshCode</a>\
</div>\
</div>\
</div>');