Giao Trinh Tin Hoc Batch File Bat CMD Khai Niem Cau Truc Va Cac Ung Dung Trong Thuc Te

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Gio trnh tin hc : Batch File (.bat .

cmd) - Khi nim, cu trc v


cc ng dng trong thc t
Vo thi im ny khi nhc ti h iu hnh MS DOS c l khng t
ngi s ni l mt th c k, lc hu v ng nh Microsoft nn
loi b n khi cc h iu bnh tn thi hin nay. V mnh c th
chc chn rng rt nhiu Newbie lun c ngh trong u. Bi v
rt nhiu bn qun rng cc h iu hnh Windows ca Microsoft
hin nay u c xy dng trn nn tng ca DOS v c v khi
vic nu dng Windows s vt v mi thc hin c trong khi
ch vi vi cu lnh DOS n gin mi chuyn s hon ton theo
bn.
Batch File lun c xem l mt thnh phn khng th thiu ca
DOS. y, vi trnh ca mnh ti cng chi c gng em n cho
cc bn mt s kin thc CObn v Batch File, th m mi ngi vn
thng gi l file Bat. Hy vng vi cht kin thc t i m ti cng
cp cc bn s c nhng vn dng hiu qu vo trong qu trnh hc
tp v ngm cu.
khai thc ht c cc tnh nng u vit ca Batch File cc bn nn
tham kho thm cun Ebook Lnh DOS trong Windows do Trn
Quang Hi bin son v cng c Dr.Batcher thay cho Notepad.
L Cc kin thc c bn v BATCH FELE:
1. Batch File l g?
Vi khi nim c th ngi ta cho rng Batch File l mt tp x l lnh
theo l. Ngha l cc bn c th t mt chui lnh m bn mun thc
hin nhiu ln vo v mi ln cn bn chi vic gi file ny ra m
khng phi nh hng lot lnh na. en by gi th Batch File c
cho l 1 loi ngn ng script.
Bn nn bit rng dng file c phn m rng l .BAT c i cht khc
vi dng .CMD. Vi nh dng .BAT th n c thc thi bi
command.com (16 bit), nu phn m rng l .CMD th n c thc thi
bi cmd.exe (32bit). Chc bn cng bit rng trong Windows hin nay tt
cc dng file ny u c thc thi bi cmd.exe cn command.com l
thnh phn ca h iu hnh DOS. V th bn nn s dng phn m rng
cho thch hfp.
2. Cc lnh c bn dng trong Batch File.

2.1. Lnh tm ngh (PAUSE):


Khi gp lnh ny chng trnh dch s tm nghi cho ti khi bn bm phm
bt k. N thng c dng kim tra tin trnh chy ca Batch File.
V d:
ECHO OFF
ECHO:
ECHO File BAtch duoc xem la thanh phan khong the thieu cua HH
DOS
ECHO:
Echo Hy vong bai viet se CO ich voi cac ban
ECHO:
ECHO http://vnnewbies.com
ECHO:
PAUSE

2.2. Lnh gi mt tp BAT (CALL):


Lnh ny gip bn gi ra mt File Batch khc m khng kt thc File
Batch dang thc thi. Lu : File c phn m rng l .BAT ch gi c
file c phn m rng l .BAT ch khng th gi file c phn m rng l
CMD. V ngc li.
Tt nhin l file BATCH c gi s tun theo nh dng m file
BATCH ang thc thi nh dng trc .
V d:
ECHO OFF
ECHO:
ECHO File BAtch duoc xem la thanh phan khong the thieu cua HH

DOS
ECHO:
Echo Hy vong bai viet se CO ich voi cac ban
ECHO:
PAUSE
ECHO:
CALL newbiex.cmd
ECHO:
ECHO http://vnnewbies.com
ECHO:
PAUSE

2.3. Lnh hin th cc lnh (ECHO):


Vi 2 ch ON/OFF gip bn iu chnh vic cho php hin th cc
dng lnh thc thi hoc n n i.
Khi gp lnh ECHO OFF DOS s thc hin cc lnh dng tip theo
m khng hin th c cu lnh ln cho ti khi gp lnh ECHO ON.
Thng thng ngi ta dng lnh ECHO a ra mt thng bo no
v s dng mu ECHO: DOS cho ra mt dng trng.
V d: Tp newbiex.cmd m mnh gi ra v d trn:
ECHO VnNewbies.com
ECHO:
Echo Share is Love
ECHO:
PAUSE
2.4. Ghi ch thch trong file BATCH (REM):

ghi ch thch trong file BATCH bn dng lnh REM. Cc ch thch


t sau lnh ny s khng c thc thi v hin th.
Li khuyn cho Newbie trc khi c bi vit ny vn l cc bn nn
tham kho thm cun Ebook Lnh DOS trong Windows do Trn
Quang Hi bin son v s dng cng c Dr.Batcher thay cho Notepad
son tho Batch File. Khi nm vng kin thc v cc lnh ca DOS
bn mi c khai thc ht sc mnh ca Batch File v vi Dr.Batcher, bn
ko phi g tng lnh na m c h tr hon ton.

lo

dit

Scarch

ew

g atch

% B

CClO R
COMP

t ie b

'0 0 ' ,

ATTRIB

COMPACT

rem
cem
rem
rem
rein
rex

D isp la y's, s e t s , or rem oves tk o r e a d - o n ly . A rc h iv a , sy a


[< c \-r)J
C S e ts th e ce<fd-only f i l e t t t i b u t c .
{+ a \-a ) - +a S e ts th e a r c h iv e f i l e a t t r i b u t e . -a c
( + s \ - ) - S S e t s t h e sy'stcnt f l i c a t t r i b u t e .
- s Cl
( + h |- J ) i - +1 S e t s th e h id d en r i i e a t t r i b u t e .
-ft C2
I (D riv e: IP a th P ileN a rrt - S p e c i f i e s th e l c c a t i o n nci
l / s - A p p lie s a t t r i b nd any cotrmartci-linc o p tio n s to n
renI 1/dJJ - A p p lie s at r r ib and any coxtnand-line o p tio n s tc

CONVERT
COPY
DATE
DEL

:p

D1SKC0 MP
DI5KC0 PY
OOSKEY
END.OCAL
ERASE
EXIT
FC
FIND
FINOSTft
FOR

ECHO

-r

resn Turns th e cxm and-echon z e a z u r e on o r o t i or cLispl


ccm [ { o n o f fH - S p e c i f i c s w h eth er to tu rn (h e comnt-and-cch
ri [Btessage] - S p c i f i e s t e x t you want to d i s p l a y on th e

C /'.O M .T

lo d s

Insert Comrftand (ENTER)

Turns t h com rrand-edong featu re


GO or off, or displys a fW M O c.
U sed Vrtthout p aram eters, echo
teptays th e eurrcnt fechi setting.

1:11

Saved

<!

>

Insert

3. Lp trnh n gin trong Batch File:


3.1.

Lnh iu khin vng lp (For):

FOR %%Bin IN (Tp hp) DO Lnh cn lm


Lnh ny c ngha l mt Bin s ln lt nhn cc gi tr trong Tp_hp
thc hin cc Lnh_cn_lm.
V d:
FOR %%i IN (D,E,F) DO COPY vnnewbies.cmd %%i
Vi lnh ny bin i s ln lt nhn cc gi tr D, E , F t d s thc hin
lnh copy tp vnnewbies.cmd sang th mc gc ca cc phn vng c,D,
F.

3.2. Php kim tra iu kin hay php r nhnh (If):


y l lnh gip bn thc hin tng lnh khc nhau ty vo tng iu
kin khc nhau. Php th c 3 kiu:
If [not] exist: Kim tra s tn ti
If [not] Chuil = = Chui2 : So snh 2 chui tin hnh cng vic
If [not] errorlevel # : Nu c li mc # th thc hin cng vic
+) Vi errorlevel 0 l khng c li trong qu trnh thc hin
+) Vi eorlevel 1 l c li xy ra
[not] l thnh phn ty chn gip bn ph nh iu kin ng sau n.
Tng t nh bng mt gi tr no hoc khng bng.
V d: y mnh s ly mt v d v trng hp 1 v 3, cn trng hp
bn c th xem thm ng dng di.
@echo off
echo.
FOR %%i IN (D,E,F) DO COPY vnnewbies.cmd %%i:
echo.
rem Kim fra xem c li hay khng. Nu c s a ra thng bo
IF errorlevel 1 Echo Co loi xay ra o buoc nay
echo.
echo Noi dung file vnnewbies.cmd:
echo.
rem Kim tra xem c tn ti tp tin vnnewbies.cmd trn phn vng D
khng? Neu c th thc hin chy n.
IF exist D:\vnnewbies.cmd CALL D:\vnnewbies.cmd
PAUSE
3.3. Lnh bc nhy (GoTo):
Lnh ny gip chng ta b qua mt on lnh no di chuyn ti v
ir mi. Thng thng ngi ta kt hp lnh ny vi cu trc r nhnh
cp pha trn (If) thc hin cc vic khc nhau cho cc iu kin
khc nhau.
V d:
ECHO Chon Y - Neu dong y
ECHO Chon N - Neu ko dong y
set /p chon= Lua chon cua ban la:
if %chon% == Y goto ok

if %chon% == N goto exit


goto exit
:ok
call vnnewbies.cmd
ECHO.
:exit
ECHO Cam on ban da su dung chuong trinh
Vi cu trc ny nu bn nhp vo Y th Batch File s chuyn ti on
lnh bt u bng :ok v v ngc li.
3.4. Tham s hnh thc (%0 %1 ...):
N ch c gi tr khi bn truyn gi tr cho n. Hy ly mt v d n gin
cc bn d hiu.
Vi Batch File c tn vnnewbie.bat vi ni dung nh v d phn 3.1:
FOR %%i IN (D,E,F) DO COPY %0 %%i:
Khi chng ta nhp lnh trn ca s DOS: vnnewbie vnnewbies.cmd th
Batch File trn s t ng nhn gi tr vnnewbies.cmd thay vo tham s
hnh thc ca n. Lc ny file vnnewbie.bat s chy vi ni dung:
FOR %%i IN (D,E,F) DO COPY vnnewbies.cmd %%i
y tuy chi l nhng cu trc c bn ca Batch File nhng vi n
bn c th d dng lm c rt nhiu vic phc tp mt cch n
gin hn rt nhiu.
Phn tip theo chng ta s nghin cu cht v file autoexec.bat.
Mt Batch File c bit ca h iu hnh DOS v mt s ng dng
hu ch ca n. Hy ng gp kin ca mnh bi vit thm
phong ph bn nh.

You might also like