Windows 10 create batch fileSource: Windows Central

On Windows 10, a batch file is a special kind of text file that typically has a .bat extension, which can include one or multiple commands that Command Prompt can understand and run in sequence to perform various actions.

Typically, you can write commands manually to perform a particular task or change settings, but a batch file simplifies the work of retyping commands, saving you time and mistakes hassles.

Also, even though, there are other tools, such as PowerShell, that you can use to write more advanced scripts, using batch files with Command Prompt is a convenient option when you need to run commands to change system settings, automate routines, and start apps or launch websites.

Best VPN providers 2020: Learn about ExpressVPN, NordVPN & more

In this Windows 10 guide, we walk you through the steps to create and run your first batch file on your computer. In addition, we'll outline steps to create advanced scripts as well as automate scripts using the Task Scheduler.

How to create batch file on Windows 10

The process of writing a batch (script or batch script) file isn't complicated. You only need a text editor (such as Notepad) and some knowledge using Command Prompt. In the steps below, we detail the steps for creating a simple and advanced batch file, as well as the steps to write a script to change the system settings.

Creating simple batch file

To create a simple batch file on Windows 10, use these steps:

  1. Open Start.
  2. Search for Notepad, and click the top result to start the app.
  3. Type the following lines to create a batch file:

    @ECHO OFF
    ECHO Congratulations! Your first batch file executed successfully.
    PAUSE
    

    Simple batch file exampleSource: Windows Central

    The above script outputs the phrase, "Congratulations! Your first batch file executed successfully" on the terminal screen.

    Batch file output Command PromptSource: Windows Central

    • @ECHO OFF — Disables the display prompt to show only the message on a clean line. Typically, this line goes at the beginning of the file. (You can use this command without "@," but the symbol hides the command being executed for a cleaner return.)
    • ECHO — Prints the desired text on the screen.
    • PAUSE — Prevents the console window from closing after executing the command. You can use this command at the end of the script or after a specific command when running multiple tasks, and you want to pause between them.
  4. Click the File menu.
  5. Select the Save as option.
  6. Type a name for the script — for example, first_simple_batch.bat.

    Quick note: While batch files typically use the .bat file extensions, you may also see scripts using the .cmd or .btm file extensions.

Once you complete the steps, you can double-click the file to run it, or you can use the steps below to learn the different ways to execute a batch file on Windows 10.

Creating advanced batch file

To create an advanced batch file that executes multiple commands, use these steps:

  1. Open Start.
  2. Search for Notepad, and click the top result to start the app.
  3. Type the following lines to create a more complex batch file:

    @ECHO OFF 
    :: This batch file reveals OS, hardware, and networking configuration.
    TITLE My System Info
    ECHO Please wait... Checking system information.
    :: Section 1: OS information.
    ECHO ============================
    ECHO OS INFO
    ECHO ============================
    systeminfo | findstr /c:"OS Name"
    systeminfo | findstr /c:"OS Version"
    systeminfo | findstr /c:"System Type"
    :: Section 2: Hardware information.
    ECHO ============================
    ECHO HARDWARE INFO
    ECHO ============================
    systeminfo | findstr /c:"Total Physical Memory"
    wmic cpu get name
    :: Section 3: Networking information.
    ECHO ============================
    ECHO NETWORK INFO
    ECHO ============================
    ipconfig | findstr IPv4
    ipconfig | findstr IPv6
    PAUSE
    

    Advanced batch file scriptSource: Windows Central

    The above batch script will run a series of commands to query different system information grouped into three different categories, including "OS INFO," "HARDWARE INFO," and "NETWORK INFO."

    Advanced batch file outputSource: Windows Central

    • @ECHO OFF — Disables the display prompt to show only the message on a clean line. Typically, this line goes at the beginning of the file. (You can use this command without "@," but the symbol hides the command being executed for a cleaner return.)
    • TITLE — Displays a custom name in the title bar of the terminal.
    • :: — Allows you to add comments and documentation information, which are ignored when the batch file runs.
    • ECHO — Prints the text on the screen.
    • PAUSE — Prevents the console window from closing after executing the command. You can use this command at the end of the script or after a specific command when running multiple tasks, and you want to pause between them.
  4. Click the File menu.
  5. Select the Save as option.
  6. Type a name for the script — for example, first_advanced_batch.bat.

After you complete these steps, you can run the script double-clicking the .bat file, or you can use the steps below to learn the different ways to run a batch.

Creating actionable batch file

In addition to showing information on the Command Prompt terminal, you can also create non-interactive batch files to perform virtually any task.

To create a batch file that runs a specific command without user interaction, use these steps:

  1. Open Start.
  2. Search for Notepad, and click the top result to start the app.
  3. Copy and paste the following command:

    net use z: \\PATH-NETWORK-SHARE\FOLDER-NAME /user:YOUR-USERNAME YOUR-PASSWORD
    

    Map network drive scriptSource: Windows Central

    Quick note: The "pause" command isn't necessary, it was added in this example to take a screenshot. If you're accessing the files from another computer that uses a specific username and password, then don't forget to use the /user: option with the necessary credentials.

    The above command is just a known command that maps a network folder as a drive inside File Explorer using the "Z" drive letter.

    Batch file to mount network folderSource: Windows Central

  4. Click the File menu.
  5. Select the Save as option.
  6. Type a name for the script — for example, mount-z-network-drive.bat.

Once you complete the steps, when you run the batch, the command will map a shared network folder with the specified settings without the need to open Command Prompt. While we only specified one command in the file, you can include as many commands as you like, as long as you write one per line.

How to run a batch file on Windows 10

On Windows 10, you can run a batch file in at least three ways. You can run a batch on-demand using File Explorer or Command Prompt. You can create a scheduled task with Task Scheduler. Or you can place the script in the "Startup" folder to run it every time you sign in to your device.

Running batch file on-demand

If you need to run a script on-demand, you can use File Explorer or Command Prompt.

File Explorer

To run a batch file with File Explorer, use these steps:

  1. Open File Explorer.
  2. Locate the folder with the script.
  3. Double-click the batch file to run it.
  4. (Optional) If you're executing a command that requires administrator privileges, you'll need to run the script as an admin by right-clicking the batch file and selecting the Run as administrator option.

    Run batch file as administratorSource: Windows Central

  5. Click the Yes button

After you complete the steps, the batch will run each command in sequence displaying the results in the terminal.

Command Prompt

To run a batch file from Command Prompt, use these steps.

  1. Open Start.
  2. Search for Command Prompt, right-click the top result, and select the Run as administrator option.
  3. Type the path and name of the batch file, and press Enter:

    C:\PATH\TO\FOLDER\BATCH-NAME.bat

    For example, the following command runs the batch file located in the user's "batch" folder inside the "Downloads" folder:

    C:\Users\user\Documents\scripts\first_simple_batch.bat

    Run batch file from Command PromptSource: Windows Central

Once you complete the steps, the output will display on the screen, even if the script includes the "PAUSE" command.

Running batch file on scheduled

To schedule a batch file on Windows 10, you can use the Task Scheduler with these steps:

  1. Open Start.
  2. Search for Task Scheduler, and click the top result to open the app.
  3. Right-click the "Task Scheduler Library" branch and select the New Folder option.
  4. Type a name for the folder — for example, MyScripts.

    Quick note: It's not necessary to create a folder, but it's recommended to organize your tasks.

  5. Click the OK button.
  6. Expand the "Task Scheduler Library" branch.
  7. Right-click the MyScripts folder.
  8. Select the Create Basic Task option.

    Task Scheduler create basic taskSource: Windows Central

  9. In the "Name" field, type a short descriptive name for the task — for example, SystemInfoBatch.

    Task Scheduler basic taskSource: Windows Central

  10. (Optional) In the "Description" field, create a description for the task.
  11. Click the Next button.
  12. Select the Monthly option.

    Monthly Task Trigger OptionSource: Windows Central

    Quick note: On Windows 10, the Task Scheduler allows you to choose a number of triggers, including on a specific date, during startup, or when any user signs in to the device. Depending on your requirements, you'll need to configure additional parameters. In this case, we're selecting the option to run a task every month.

  13. Click the Next button.
  14. Using the "Start" settings, specify the day and time when the task should start running.
  15. Use the "Monthly" drop-down menu to pick the months of the year that you want to run the task.

    Task Scheduler monthly scheduleSource: Windows Central

  16. Use the "Days" or "On" drop-down menu to specify the days that the task will run.

    Schedule batch file day of the monthSource: Windows Central

  17. Click the Next button.
  18. Select the Start a program option to run the batch file.

    Staart Program ActionSource: Windows Central

  19. In the "Program/script" field, specify the path for the batch file.

    Task Scheduler Batch file locationSource: Windows Central

  20. Click the Finish button.

Once you complete the steps, the task will save and run the batch file on the schedule you specified.

These instructions cover the steps to create a basic task with Task Scheduler. If you want to create a more customizable task, use this guide.

Running batch files on startup

Alternatively, if you want to run a batch file every time that you sign in to your device, instead of using Task Scheduler, you can save the script in the "startup" folder.

To run a script on startup, use these easy steps:

  1. Open File Explorer.
  2. Locate the folder with the batch file.
  3. Right-click the file and select the Copy option.
  4. Use the Windows key + R keyboard shortcut to open the Run command
  5. Type the following command:

    shell:startup

    Run shell startup commandSource: Windows Central

  6. Click the OK button.
  7. Click the Paste option from the "Home" tab in the Startup folder. (Or you can click the Paste shortcut button to create a shortcut to the batch file.)

    Copy Batch File startup folderSource: Windows Central

  8. Sign out of the Windows 10 account.
  9. Sign back into the account.

After you complete the steps, every time you sign in to the Windows 10 account, the batch file will execute and run the commands in sequence.

We're focusing this guide on Windows 10, but the ability to use batch files has been around for a long time, which means that you can refer to these instructions if you're still using an older version, including Windows 8.1 or Windows 7.

More Windows 10 resources

For more helpful articles, coverage, and answers to common questions about Windows 10, visit the following resources: