Article

Ask Microsoft: How can I automate Disk Defragmenter?

SearchWinComputing.com staff

On a regular basis, top Microsoft executives answer readers' toughest technical questions about Windows-based systems. This installment of "Ask Microsoft" was answered by Mike Mercer, Microsoft Remote IT Services, GTS.

To submit a technical question for consideration, send an e-mail to editor@SearchWinComputing.com.

Question: Microsoft allows the option to run disk defrag ("defrag.exe") in command line. There are some switches, but none give you the power to schedule disk defragmentation. Is it possible to define a scheduled job with defrag.exe so that disk defragmentation won't require user intervention? More importantly, how could a user define a log for that job? Can you give an example?

Answer: With Windows 2003 and Windows XP the ability to run Disk Defragmenter from the command line (defrag.exe) was added. This functionality was missing from Windows 2000 and as a result you would have to resort to a scripted solution. In both Windows 2003 and Windows XP you can create a scheduled task using the 'Scheduled Tasks' wizard located in the Control Panel or from a command line using at.exe. In either case an example of the 'command' syntax is below:

To defrag E: drive;
Create a .bat file and paste the contents below inside:
defrag.exe -v e: >c:\temp\logfile.txt

The e: switch targets the e: drive for the defrag.
The -v switch enables verbose logging.
The >c:\temp\logfile.txt pipes the output to a file named logfile.txt.

Create the Schedule Task to launch the .bat file. The output will be located in c:\temp\logfile.txt once the job is completed.

Here is another option:
From the command line type the following to schedule a task:
at 12:00 c:\winnt\system32\cmd.exe /C "defrag.exe c: -v >c:\logfile.txt"

For more information, you can read How to Automate Disk Defragmenter Using Task Scheduler Tool in Windows XP at http://support.microsoft.com/default.aspx?scid=kb;en-us;555098.
-- Mike Mercer


There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: