Writing a Windows batch script

08 Jun, 2022
In Windows, the batch file is a file that stores commands in a serial order. The command line interpreter takes the file as an input and executes in the same order. A batch file is simply a text file saved with the .bat file extension. It can be written using Notepad or any other text editor. A simple batch file will be:
// When echo is turned off, the command prompt doesn't appear in the Command Prompt window.
ECHO OFF

// The following command writes GeeksforGeeks to the console.
ECHO GeeksforGeeks

// The following command suspends the processing of a batch program and displays the prompt.
PAUSE
After saving it with a .bat extension. Double click it to run the file. It prints shows:
 
In the above script, ECHO off cleans up the console by hiding the commands from being printed at the prompt, ECHO prints the text “GeeksforGeeks” to the screen, and then waits for the user to press a key so the program can be ceased. Some basic commands of batch file:
ECHO – Prints out the input string. It can be ON or OFF, for ECHO to turn the echoing feature on or off. If ECHO is ON, the command prompt will display the command it is executing.
CLS – Clears the command prompt screen.
TITLE –  Changes the title text displayed on top of prompt window.
EXIT – To exit the Command Prompt.
PAUSE – Used to stop the execution of a Windows batch file.
:: – Add a comment in the batch file.
COPY – Copy a file or files.
Types of “batch” files in Windows:
INI (*.ini) – Initialization file. These set the default variables in the system and programs.CFG (*.cfg) – These are the configuration files.SYS (*.sys) – System files, can sometimes be edited, mostly compiled machine code in new versions.COM (*.com) – Command files. These are the executable files for all the DOS commands. In early versions there was a separate file for each command. Now, most are inside COMMAND.COM.CMD (*.cmd) – These were the batch files used in NT operating systems.
INI (*.ini) – Initialization file. These set the default variables in the system and programs.
CFG (*.cfg) – These are the configuration files.
SYS (*.sys) – System files, can sometimes be edited, mostly compiled machine code in new versions.
COM (*.com) – Command files. These are the executable files for all the DOS commands. In early versions there was a separate file for each command. Now, most are inside COMMAND.COM.
CMD (*.cmd) – These were the batch files used in NT operating systems.
Lets take another example, Suppose we need to list down all the files/directory names inside a particular directory and save it to a text file, so batch script for it will be,
@ECHO OFF

// A comment line can be added to the batch file with the REM command.
REM This is a comment line.

REM Listing all the files in the directory Program files 
DIR"C:\Program Files" > C:\geeks_list.txt 

ECHO "Done!"
Now when we run this batch script, it will create a file name geeks_list.txt in your C:\ directory, displaying all the files/folder names in C:\Program Files. Another useful batch script that can be written to diagnose your network and check performance of it:
// This batch file checks for network connection problems.
ECHO OFF

// View network connection details
IPCONFIG /all

// Check if geeksforgeeks.com is reachable
PING geeksforgeeks.com

// Run a traceroute to check the route to geeksforgeeks.com
TRACERT geeksforgeeks.com

PAUSE
This script displays:
 
This script gives information about the current network and some network packet information. ipconfig /all helps to view the network information and ‘ping’ & ‘tracert’ to get each packet info. Learn about ping and traceroute here.
shubham_singh
GBlog
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
DSA Sheet by Love Babbar
GEEK-O-LYMPICS 2022 - May The Geeks Force Be With You!
Geek Streak - 24 Days POTD Challenge
What is Hashing | A Complete Tutorial
GeeksforGeeks Jobathon - Are You Ready For This Hiring Challenge?
GeeksforGeeks Job-A-Thon Exclusive - Hiring Challenge For Amazon Alexa
Roadmap to Learn JavaScript For Beginners
How To Switch From A Service-Based To A Product-Based Company?
What is the Role of Fuzzy Logic in Algorithmic Trading?
What is Data Structure: Types, Classifications and Applications