How To Redirect Output on the Windows Command Line

1 minute read

This tip will show you how to write the output of a command at the Windows command line to a file. It’s not hard (infact it’s one of the very basics of command line programming).

Start Command Line within Windows by choosing Start->Run then entering cmd and pressing enter.

Suppose you want to capture the output from a directory listing, say C:\blah. To get the directory listing to display on the screen you would type the command dir C:\blah which may generate the output:

C:\>dir C:\blah

Volume in drive C is Windows
Volume Serial Number is XXXX-YYYY

Directory of C:\blah

07/01/2006 21:08 <DIR> .
07/01/2006 21:08 <DIR> ..
07/01/2006 21:07 <DIR> folder1
07/01/2006 21:07 <DIR> folder2
06/03/2005 11:58 5,442,634 music.mp3
07/01/2006 21:07 17 text1.txt
2 File(s) 5,442,651 bytes
4 Dir(s) 12,453,460,480 bytes free

If you want to capture this listing to the file c:\folder.txt then you would append > C:\folder.txt to the original command, i.e.:

C:\>dir C:\blah > C:\folder.txt

Notice now that nothing appears on the command line window after this and it simply moves on to the next prompt. If we now check the file C:\folder.txt then we see that it has the contents of the directory.

A slight variant of this is to use the greater than symbol, >, twice, ie:

C:\>dir C:\blah >> C:\folder.txt

This will append the output of the dir command to what is already contained in the file C:\folder.txt.