Creating a Simple Batch File

by Barry Dysert
(last updated January 23, 2017)


Windows batch files are great if you want to perform several tasks in quick succession, or if you want to do things to several files in a row, or if you simply don't want to use the GUI interface to perform some tasks (e.g., performing unattended tasks). Batch files are text files with a ".bat" extension and contain Windows' command-line statements. Of course, you need to know the command-line statements in order to enter them into a .bat file. There are many places on the Web that describe the available command-line statements, but one place is the following:

There are various ways to create a batch file, but since a batch file is nothing but a plain text file, perhaps the simplest way is to use Notepad. Since I use batch files a lot, I created a C:\Bat folder where I keep them all. To create a new one I use Windows Explorer or File Explorer to navigate to C:\Bat, then I right-click in that folder and select New | Text Document. (See Figure 1.)

Figure 1. Creating a new text document.

Immediately after selecting the Text Document menu item, type the name you want to give to your batch file (say you want it to be called "Directory") and press Enter. Now, pressing Enter a second time will launch Notepad, and you can begin typing in the command-line statements that constitute your batch file.

For example, say you wanted to create a batch file that produces a directory listing of a folder, and puts that listing into a file named "Dirlist.txt". The command-line statement that produces a directory listing is DIR, and to direct DIR's output to a file you use the ">" operator. So the line you type into Notepad would be:

DIR > Dirlist.txt

Command-line statements are not case sensitive, so you don't need to type DIR in uppercase if you don't want to. After you've typed this into Notepad, save the file and exit. The last thing to do before actually invoking your batch file is to rename it to have a ".bat" extension instead of the default ".txt" extension. Here again, under Windows Explorer or File Explorer, right-click the file you just created ("Directory.txt") and select Rename from the Context menu. Use the right-arrow key to move over to the ".txt" portion of the file name and replace ".txt" with ".bat" and then press Enter. (Windows will ask you if you're sure you want to rename the file. Click Yes.) You should now have a file named "Directory.bat" in your folder.

One way to invoke a batch file is to double-click on it, so to actually execute your DIR command, double-click the "Directory.bat" file. Immediately, a window will briefly appear and disappear, and you'll now see a file named "Dirlist.txt" in your folder. This file was created by the commands in the batch file. By opening that file you'll see a directory listing of your C:\Bat folder.

Obviously, having a batch file that produces a directory listing of your C:\Bat folder is of limited value, but this tip was meant to give you an introduction to creating and invoking a simple batch file. But the batch processing capabilities are very powerful. See other tips to get a feel for using slightly more sophisticated batch files.

 This tip (13100) applies to Windows 7, 8, and 10.

Author Bio

Barry Dysert

Barry has been a computer professional for over 35 years, working in different positions such as technical team leader, project manager, and software developer. He is currently a software engineer with an emphasis on developing custom applications under Microsoft Windows. When not working with Windows or writing Tips, Barry is an amateur writer. His first non-fiction book is titled "A Chronological Commentary of Revelation." ...


Clearing Your Jump Lists

Ever since their introduction in Windows 7, I've found Jump lists to be great timesavers. Some people have privacy ...

Discover More

Using Robocopy with File Sizes and Ages

Robocopy is a robust file copy utility built into Windows. The various switches built into the program provide very ...

Discover More

Using the Find Command

Finding data within files is a common need. If what you're looking for is in a flat file, you can find what you're after ...

Discover More
More WindowsTips

Passing Parameters to a PowerShell Script

Like the older batch-file processor, PowerShell can accept parameters. This allows for flexibility in your script. This ...

Discover More

Using the FOR Statement

In another tip we were introduced to the various FOR loops that exist in Windows. The actual use of these loops was left ...

Discover More

Using Batch Files, Part 2

This tip is part of a series that talks about Windows batch files. It introduces a few more commands and special ...

Discover More

FREE SERVICE: Get tips like this every week in WindowsTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.


If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is 1 + 7?

2017-01-23 21:18:24

John B. Windham

Brian C Doutaz,
As a work-a-round, try 'print' the tip (select the Microsoft printer) and then navigate to the folder where you want the file printed (saved).

That should save a *.PDF file to the folder where you can always go back there to re-read it as needed.

Works for me.

2017-01-23 15:20:29

Brian C Doutaz

Can anyone give me some idea of why, when I do a copy of this Tip (13100) (and any other tips in this series for that matter) (W10 on a Surface) the image that you have shown does NOT copy to the clipboard nor paste into any other program? As a matter of fact, pasting the tip into a Word doc (2003) instantly crashes the program and it has to be restarted.

2017-01-23 09:13:14

Jennifer Thomas

If you can write simple vba and simple html, you will have limited confusion writing bat files - just copy code and replace the variables.

For example, I know very little about the topic, but wrote a bat script to make an external copy of any file in our environment that can be customized by a user (eg custom PDF stamps, customized dictionaries or auto-correct lists, preference files, etc.) and then another script to put all that back after a same-system re-image and that has saved hours of time!

My point is don't be afraid of this level of programming - just have a backup plan in case you make a mistake, and go for it!

Newest Tips

FREE SERVICE: Get tips like this every week in WindowsTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.