Defrag All Disks
Sinds Windows 2008 kunnen schijven makkelijk automatisch gedefragmenteerd worden, alleen bij de oudere OS-en gaat dat niet erg makkelijk en wat ik zelf ook wel jammer vind bij Windows 2008 is dat er geen logfile gemaakt wordt bij een defragmentatie. Hiervoor is het onderstaande script. Met behulp van het onderstaande VBScript defragmenteer ik daarom aantal servers/ werkplekken. Juist omdat dit script een logfile maakt van ervoor en erna is dit een leuke toevoeging ten opzichte van de standaard defrag.
Const LogFile = "C:\DefragAll.log"
Const DriveTypeRemovable = 1
Const DriveTypeFixed = 2
Const DriveTypeNetwork = 3
Const DriveTypeCDROM = 4
Const DriveTypeRAMDisk = 5
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Drives = FSO.Drives
For each Drive in Drives
if Drive.DriveType = DriveTypeFixed then
RunCmd Drive
end if
Next
Sub RunCmd(DriveString)
Set WshShell = WScript.CreateObject("WScript.Shell")
RunString = "%comspec% /c echo " & WeekDayName(WeekDay(Now), True) & " " & Now & " " & DriveString
Return = WshShell.Run(RunString & " >> " & LogFile & " 2>&1", 0, TRUE)
RunString = "%comspec% /c %WINDIR%\System32\Defrag.exe " & DriveString & " -f"
Return = WshShell.Run(RunString & " >> " & LogFile & " 2>&1", 0, TRUE)
Return = WshShell.Run(echo "" & " >> " & LogFile & " 2>&1", 0, TRUE)
Set WshShell = Nothing
End Sub