Subscribe to How-To Geek

Recommended: Click Here to Run a Free Scan for Common PC Errors   [Sponsored Link]

Defrag Multiple Hard Drives At Once In Windows

The Disk Defragment utility in Windows XP does not include a way to defragment all hard drives at the same time, which is inconvienient when you have more than one hard drive in your computer.

The method we are going to use is by creating a batch file to defragment all of the drives, one after the other.

The disk defrag utility in Windows XP can be triggered from the command line with the following syntax:

Windows Disk Defragmenter
Copyright (c) 2001 Microsoft Corp. and Executive Software International, Inc.
Usage:
defrag <volume> [-a] [-f] [-v] [-?]
  volume  drive letter or mount point (d: or d:volmountpoint)
  -a      Analyze only
  -f      Force defragmentation even if free space is low
  -v      Verbose output
  -?      Display this help text

First, we'll create a file named defragall.bat, and place it anywhere you like, as long as you'll remember where it is. If you want to run it from the command line, you could place it in the \windows directory so that it will be available in the system path.

For each hard drive, add a line to the batch file. For instance, if we want to defragment drives C: , D: , and F: we will add these three lines:

defrag c: -f
defrag d: -f
defrag f: -f

To run the defrag, just either double-click on the batch file or start it from the command line.

The Geek is the founder of How-To Geek and a geek enthusiast. When he's not coming up with great how-to articles, he's probably writing at his personal blog. This article was written on 11/22/06 and tagged with: Windows, Customizing: Tips & Tweaks

Comments (6)

  1. jkugler

    I have already done this but was wondering if there is a way to not show the command line box when the batch is exicuted or atleast start it minimized? Any help would be a appreciated. Tthank You in advance.

  2. visitor

    @echo off

  3. Dean

    Thanks. This is truly an eye opener….

  4. Tie 1 On

    I have made the Defrag batch file, but i'm not sure if it's working properly. Is there any way of seeing the progress of the defrag?

  5. Rajagopalan R

    Hai,

    Earlier, I was having the problem to see the hidden folders, though I checked the radio button "Show all hidden folder & files" option. But after installing revmon killer, I got relief. Now I am facing a new problem that always a cursor of sand glass is sticking with the cursor arrow (point). How could I clear ? Also when I click the hard drive, I could open them instead a pop up window open with the heading of "script…" When I right click on the drive, I found "Auto play" command as the first command in the pane. How could I clear this problem. My pc becomes very slow. Please help to solve my problems

  6. Leandro

    Create this archive .vbs!!! And create job in Scheduled Task!!!

    '——————————————————————————–

    Set WshShell = WScript.CreateObject("WScript.Shell")

    Dim fso, d, dc
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set dc = fso.Drives
    For Each d in dc
    If d.DriveType = 2 Then
    Return = WshShell.Run("defrag " & d & " -f", 1, TRUE)
    End If
    Next

    Set WshShell = Nothing
    '——————————————————————————-


Leave a Comment




Leave your friendly comment here. If you have a computer help question, leave it on the forums instead.

Note: Your comment may not show up immediately on the site.

Copyright © 2006-2008 HowToGeek.com. All Rights Reserved.