Batch commands - Glasnost!
Lab 11 - Batch files. Exercise 1 ? Create your first batch file. Exercise 2 ? Create
a directory structure. Exercise 3 ? Wildcards example. Exercise 4 ? Wildcards ...
Part of the document
Lab 11 - Batch files Exercise 1 - Create your first batch file 2
Exercise 2 - Create a directory structure 2
Exercise 3 - Wildcards example 3
Exercise 4 - Wildcards example 3
Exercise 5 - Wildcards example 3
Batch commands 4
Exercise 6 - Wildcards Example 5
Exercise 7 - Copy from one drive to another 5
Exercise 8 - Creating a Directory structure 5
Exercise 9 - Copying and moving files 6
Exercise 10 - Removing directories 6
Exercise 11 - Using the ECHO COMMAND 6
Exercise 12 - Using the call command 7
Exercise 13 - Replaceable parameters 7
Exercise 14 - Replaceable parameters 7
Exercise 15 - Replaceable parameters 8
Exercise 16 - Replaceable parameters 8
Exercise 17 - Paths 10
Revision : from past exams 10 Ref: www.chebucto.ns.ca/~ak621/DOS/BatBasic.html
Batch files are files that contain a list of commands. It executes the
commands within the file when you execute the batch file. The commands
execute one by one. A command within a batch file can be used to start/run
another application, for example you could start MS Word.
Why batch files are useful?
A batch file could be used to run frequently run commands, deleting a
series of files, moving files, copying files etc. A simple batch file does
not require any special programming skills and can be done by users who
only know DOS commands.
An example of a well known batch file is the autoexec.bat, which is a
simple batch file loaded each time the computer is loaded on MS-DOS and
early Windows computers. This batch file contained all the necessary
commands and programs used to run MS-DOS and Windows each time the computer
booted.
Use your VMware accounts to do this lab sheet because you will need to save
your work. Exercise 1 - Create your first batch file 1. Open an MS-DOS command window.
2. Change to the root directory of the C drive and create a directory
called BatchFiles. You can use this directory to save your batch
files.
3. Change into Batchfiles folder. Create a new file called Ex1.bat using
notepad. 4. To do this type notepad ex1.bat at the command line. 5. Type in the following lines into the file and Save. Each of the lines
below is a command. cls
ver
pause
dir c:\windows
6. Before continuing, can you remember what the effect of each of the 4
commands that you have typed into the file? If not - look them up in
the help.
7. Make sure you are in the Batchfiles folder.
8. Key in DIR and MAKE SURE you see a file called EX1.BAT
9. At the prompt, type in the name of the batch file i.e. Ex1 and press
Enter.
10. Understand the outcome.
10. Put the command @ECHO OFF as the first line into Ex1.bat.
Run the batch file again. What is effect of this statement?
.......................................................................
............................................................
.......................................................................
...........................................................
Exercise 2 - Create a directory structure Write a batch program called EX2.BAT that creates the following
directory structure on drive C. Check either in Explorer or at the prompt that the directory structure
shown above has been created.
Add comments to all your batch files using Rem command at start of the
line. The comments should indicate the following:
- Program purpose
- Author
- Date written
Run the batch file EX2.BAT. Are you now in a different folder to the one
you were in before you ran the batch file. You should not move directory as
a result of running a batch file unless that is part of the batch file. Exercise 3 - Wildcards example Write a batch program called EX3.BAT that lists all files which start with
the letter M and have the extension of .EXE on drive C. It should search
from the root down through all the subdirectories. If you want to terminate a batch file during execution, press Ctrl + C. Exercise 4 - Wildcards example Write a batch program called EX4.BAT that lists all files that match any of
the following criteria within the root of the C drive and down through its
subdirectories: a) Files with an extension of COM and have 4 letters in the filename.
e.g., chcp.com mode.com etc. b) EXE files whose 2nd letter is I e.g., WINHELP.EXE DIAGS.EXE etc. Make sure the output does not scroll up the screen too quickly.
Put a pause command in between parts a) and b) Exercise 5 - Wildcards example Write a batch program called EX5.BAT that lists all files that match any of
the following criteria within the Windows folder and down through its sub
directories: a) Files that have an extension that starts with the letter C.
b) List folders and files that don't have any extension
Batch commands Just like all MS-DOS commands, all batch file commands are not case
sensitive. However, in the below listing we have listed all commands in all
caps to help you identify what is a command and what is not.
|@ |Does not echo back the text after the @ symbol. This is most |
| |commonly used as @ECHO OFF to prevent any of the commands in the |
| |batch file from being displayed, just the information needed. |
|%1 |The percent followed by a numeric value, beginning with one, allows |
| |users to add variables within a batch file. Example of what can be |
| |used in a batch file. |
| |echo Hello %1 |
| |When the above one-line batch file is created, add your name after |
| |the batch file. For example, typing myname (being the name of the |
| |bat file) and then your name: |
| |myname bob |
| |would output: Hello bob |
| |Note: This can be extended to %2, %3, and so on. |
|:LABEL |By adding a colon in front of a word, such as LABEL, you create a |
| |category, more commonly known as a label. This allows you to skip to|
| |certain sections of a batch file such as the end of the batch file. |
| |Also see GOTO. |
|CALL |This is used to run another batch file within a batch file. When the|
| |batch file that is called is completed, the remainder of the |
| |original batch file is completed. Note if the batch file does not |
| |exist it will give an error message. |
|CLS |Clear Screen |
|ECHO |Will echo a message in the batch file. |
| |ECHO "Hello World" will print Hello World on the screen when |
| |executed. |
| | |
| |Note if you have not typed @ECHO OFF at the beginning of the file |
| |this will also print |
| |"ECHO Hello World" and |
| |"Hello World". |
| | |
| |If you would just like to create a blank line, type |
| |ECHO. (adding the full stop creates an empty line.) |
|EXIT |Exits out of the DOS window if the batch file is running from |
| |Windows. |
|GOTO |Used to go to a certain label, such as LABEL. An example of GOTO |
|LABEL |would be to GOTO END. For an example of this see running different |
| |programs. . |
|IF |Used to check for a certain condition if the condition exists. If |
| |that condition exists it will perform that function. |
|PAUSE |Prompt the user to press any key to continue. |
|REM |Allows you to place comments into the batch file without displaying |
| |or executing that line when the batch file is run. |
|SHIFT |Changes the position of replaceable parameters in a batch program. .|
Exercise 6 - Wildcards Example Write a batch program called EX6.BAT
Your batch file should do the following:
. Clear the screen
. Add a line to change directory to the C:\Windows directory
. Add a line to list all files with an extension of TXT in that directory.
(Make sure you put some text files in here if there are none already). Exercise 7 - Copy from one drive to another
You will be using the C drive and a different partition on the drive in
this batch file. My example uses partition E. Create another partition on
your Vmware computer if you have not already done so.
Write a batch program called EX7.BAT. It should carry out the following
tasks: . Copy all files with an extension of ps1 from Drive C to Drive E. (Use
either the copy command or the xcopy command. The xcopy command is the
better one to use here.) For example files like profile.ps1 or types .ps1 . Before the files are copied across use the echo command to tell the user
you are doing so. Run the batch program.
Modifications
Add the pause command to your batch file. This line should be inserted
before the copy is carried out. What effect does this have on the program?
Exercise 8 - Creating a Directory structure Write a batch program called EX8.BAT that creates the following directory
structure on drive C. You have already c