COPY \ NC\ %1. Exe.a:\ Subdir
Файл охирида ECHO буйруғи ёрдамида экранда буйруқни бажарилишини тақиқловчи маълумотни чиқариш учун қуйидаги буйруқни ёзамиз.
ECHO % 1.EXE. copield todrina A
(ctrl c) e “enter”
Файлни сақлаб ва дастур ишини тамомлаймиз.
Энди MOVER BAT файлини бажарилишини кўрайлик. Буйруқ файлидаги ўзгарувчига бирор бир қийматни тақдим этиш мумкин.
Бу қийматни буйруқ файлини юклашда аргумент сифатида кўрсатилади.
Масалан: MOVE буйруқ файлини юклашда файл номидан кейин NU қиймати кўрсатилади натижада % 1. ўзгарувчига y қиймат тақдим этилади.
MOVE
Агар буйруқ файли номидан сўнг 7 тадан ортиқ сўз кўрсатилса, у ҳолда улар %2, %3, %4,… %9 гача ўзгарувчиларнинг қийматлари бўлиб ҳисобланади.
Интерактив буйруқ файллар.
ВЕ дастур таркибида АSK буйруғи мавжуд бўлиб, бу буйруқ ёрдамида фойдаланувчи билан мулоқатни ўрнатиш мумкин. «Мулоқот» деганда дастур сўровига фойдаланувчининг берган жавоби тушунилади.
АSK буйруғи қуйидаги форматда ёзилади: BE ASK “prompt text”, Key-list.
Бу ерда “prompt text” - cўров матни, яъни бу экранга чиқариладиган қатор ёки савол ASK буйруғи сўровни экранга чиқаради ва фойдаланувчи томонидан бирор бир тугмани босилгунча кутади.
Key-list - тугмалар рўйхати. Сўров учун кирилиши керак бўлган белгилар рўйхати. Бу рўйхат 2 та дирекцияни бажаради.
Биринчидан, фойдаланувчининг вариантлар сонини чегаралайди. Агар рўйхатда кўрсатилган тугмача босилса ASK буйруғи уни қайси ишни ва буйруқ файлини бажарилишини давом эттиради. Агар рўйхатда бўлмаган тугмача босилса, товуш сигнали берилади ва рўйхатдаги тугмача босилгунга қадар сўров фаоллиги сақланади.
Иккинчидан, DOS ERROR LAVEL ўзгарувчини аниқланган қийматини узатишдан иборат. Бу қиймат IF шартли буйруғида қўлланади.
ERROR LAVEL бўлган сонли катталиклардан иборат бўлиши мумкин.
Масалан, тугмачалар рўйхати “abcde” дан иборат бўлса ва фойдаланувчи “С” тугмачани босса у ҳолда ERROR LAVEL ўзгарувчи қиймати 3 га тенг бўлади.
Агар ASK буйруғида тугмачалар рўйхати киритилмаса, у ҳолда буйруқ ихтиёрий тугмани босиш мумкинлигини кўрсатади. ERROR LAVEL ўзгарувчи эса - қийматга тенг бўлади.
ASK буйруғи қуйидаги мажбурий бўлмаган параметрларни ўз ичига олади.
Osfaulf - агар фойдаланувчи Enter тугмасини босганда автоматик киритиладиган белгини аниқлаш.
Хусусий ҳолда кўрсатилган белги тугмачалар рўйҳатида бўлмаслиги мумкин.
Timeout - тайт - аут. Фойдаланувчи ASK буйруғи сўровига жавоб бериш вақти. Агар кўрсатилган вақтда фойдаланувчи сўровга жавоб бермаса у ҳолда хусусий ҳолдаги белги автоматик киритилади. Агар ASK буйруғида Timeout рўйхати кирсатилмаса буйруқ фойдаланувчида жавобни доимий кутиб туради.
Adjust - созлаш. Бу рўйхат ERROR LAVEL қийматига белгиланган қийматни қўшиш учун ишлатилади. Масалан: Adjust=10 бошланадиган тугмача кодига 10 сонини қўшиш, яъни 3+10=13.
Color - ранг.
MOVER RAT
ECHO OFF
Be CLS
Be WINDOW 8,15,16,64, 200 M
Be ROWCOL 9,27 “NORTON утилит дастури”
Be ROWCOL 10, 15
Be PRINT CHAR -,48
Be PRINT CHAR - 11,1
Be ROWCOL 12, 33, “файлни копия қилиш”.
Be ROWCOL 14,35 “%1.exe” BLACK ON WHIIE IF NOT EXIST (norton)% 1.exe GOTO NAFIBE IF EXIST A: (subdis)%1.exe goto duplicate
Be ROWCOL 15, 23
COPY (norton)%1.exe a:subdir)
GOTO END
: nofibe
Be WINDOV 13, 20, 17, 59 BLACK ON WHIIE 200 M
Be BEEP Burrer - end
Be ROWCOL 14, 22 “%1.exe файл йук”.
Be 16, 22 “_______________”
: duplicate
Be WINDOW
Do'stlaringiz bilan baham: |