|
Batch файловете позволяват на MS-DOS и MS-Windows потребителите да създават последователности от команди, които са записани в един файл и се изпълняват последователно. На пример, такъв файл може да се използва за изпълнение на често повтаряни действия като изтриване или преместване на поредица от файлове. Един простият batch файл не изисква специални знания по програмиране и може да бъде създаден от всеки потребител, който има достатъчно познания за командите на DOS.
Един начин за придобиване на представа какво е Batch файл за всеки който е запознат с Windows или MacOS е това да се мисли за Batch файлът, като за Shortcut (или Икона в MacOS). Подобно на Shortcut, batch файловете не са програми, но стартират команди или програми чрез команден ред (В “Properties” на всеки shortcut можете да видите какво се стартира като команда в полето “target”). Друг добър пример е файлът autoexec.bat, който се изпълнява автоматично винаги след зареждане на операционната система. Този файл съдържа команди, които се изпълняват преди стартиране на други програми. Създаване на batch файл В DOS среда (вкл. DOC прозорец във Windows) 1. Стартирайте DOS (или DOS прозорец “Start” -> “Run” -> “command”). 2. На командния ред напишете: “edit test.bat” [Enter]. 3. Нормално ще се зареди простичък текстов редактор със син екран. Напишете като отделни редове: CODE
4. Затворете редактора със запис на файла. За тези, които не са запознати с DOS средата - редакторът работи в псевдо-графичен режим. Натиснете “Alt+F”, после ‘X’ за затваряне на редактора. В новите версии на Windows, можете да използвате и мишка. 5. След като се върнете на командния ред, напишете “test.bat” [Enter]. Това ще изпълни batch файла test.bat. Понежа първата команда е “Pause”, първо ще получите съобщението “Press any key to continue . . .”. След като натиснете клавиш на клавиатурата изпълнението ще продължи ред по ред, тоест първо ще се изведе съдържанието на директория windows следвана веднага от съдържанието на windows\system. За да редактирате test.bat, просто напишете отново edit test.bat [Enter]. Повече информация за edit.com - в точката Help на самия редактор. Тъй като edit е външна команда на DOS (тоест отделна програма) е възможно да липсва. В такъв случай по добре я намерете иначе единствения изход е да използвате командата “copy” с параметри “con” и “test.bat”. “copy con test.bat” стартира копиране на това което пишете на клавиатурата (конзолата - “con”) във файла “test.bat”. За завършване използвайте [Ctrl+z][Enter]. Ако някога сте работили така, едва ли ще ви се прииска отново. Във Windows среда - за потребители свикнали с графичния интерфейс. Windows потребителите могат също да използват горния пример, но предполагам, че всеки би предпочел удобствата на графичния потребителски интерфейс. Можете да използвате всеки текстов редактор. За примера ще използваме Notepad за създаване на batch файл. Стартирайте го от менюто или: 1. Отворете главното меню с бутон “Start”. 2. Изберете “Run”. 3. Напишете: “notepad” [Enter]. 4. В Notepad напишете долните линии или ги копирайте чрез клипборда от тук: CODE
5. Кликнете в менюто на Notepad: “File” -> “Save”. Запомнете или променете папката. Запишете името на файла: “test.bat”. Променете от падащия списък “Save as type” на “All files” (За да не получите най неочаквано файл с име “test.bat.txt”). Кликнете “Save”. Може да затворите Notepad, но може и да го оставите отворен. 6. Отворете в папката в която сте записали файла и кликнете (doube click) върху него за да го стартирате. Основната част от специалните команди Освен всички команди на DOS, има и набор от команди, които са предвидени специално за използване в batch файлове. Ето част от тях: @ Предотвратява извеждането на екрана на текста от линията. Има действие само за текущата линия. Обикновено използване: “@ECHO OFF” - като първа линия от файла. Спира извеждането на командите до края или до „ECHO ON”. Така може да се извежда само необходимата на потребителя информация, без самите команди. % (%1, %2 ...) Използва за означаване на променливи. Променливите в batch файловете се означават с % и число. Те получават като стойност параметрите на batch файла, които са записани след името му при стартирането. Например, ако имаме файл myname.bat със съдържание CODE
и го стартираме така: “myname Bob” ще получим резултат: CODE
: (:LABEL) Двоеточието е знак с който се отбелязват етикети. Това са места в Batch файла към които може да се направи преход чрез командата goto. CALL Използва се за стартиране на друг batch файл. Подобно на извикването на една процедура от друга в езиците за програмиране. Докато се изпълнява извиканият Batch файл, извикващия изчаква. Ако възникне грешка в извикания файл, изпълнението на извикващия НЕ се прекъсва. CHOICE Използва се за въвеждане на избор между няколко възможности от страна на потребителя. В примера по-долу можете да видите условно разклонение в зависимост от избора на потребителя между три възможности. За Windows 2000 и по-високи версии командата е заменена със частен случай на “SET” CLS CLear Screen - просто изчиства екрана. ECHO Извежда текста който следва до края на реда. Ако е в зоната на действие на @ECHO OFF се извежда само текста, иначе първо ще се изведе командата заедно с текста и на следващия ред само текста. За извеждане на празен ред, използвайте само “ECHO.”. EXIT Затваря прозореца, ако batch файла е стартиран в Windows. GTTO Използва се за преход към етикет. В примера по-долу можете да видите как се използва. IF Проверка на логическо условие. В примера по-долу можете да видите как се използва. PAUSE Спира временно изпълнението на файла до натискане на произволен клавиш. Ако се натисне [Ctrl + C], се прекратява изпълнението на файла. REM REMark - Използва се за записване на коментари. Редовете започващи с “REM” се прескачат от интерпретатора. SHIFT / SHIFT [/n] SHIFT - измества позицията на параметрите с 1 стъпка. За Windows 2000 и нататък: SHIFT [/n] - с n стъпки. Пример - test.bat : CODE
Стартиране: test one two Резултат:- one- two START Стартира асинхронно (без да изчаква резултат) Windows програма. (За Windows версии под ’95, командата е „WIN”) Пример: START C:\WINDOWS\CALC.EXE Примери Условни преходи в зависимост от потребителски избор В следващия пример е показано условно разклонение в зависимост от избор на потребителя. На местата на „ECHO YOU HAVE PRESSED ...” можете да поставите друг по-смислен код. За Windows 2000 и по-високи версии вместо “CHOICE” запишете “SET”. CODE
Стартиране на Windows програми от Batch Файл За стартиране на програма от batch файл е предвидена командата “Start”. Например за стартиране на Notepad можете да запишете следния ред в Batch файла: CODE
„/max” задава стартиране на цял екран. Кавичките са необходими, ако в пътя има интервали, иначе може да не се поставят. Това разбира се е пример за принципа. За Windows 2000 и NT директорията, където по подразбиране се намира Windows e \WINNT. Задържане на изпълнението за определено време По-долния ред е пример за прекъсване изпълнението на batch файл за определен период (от 5 до 99) секунди (в примера 15): CODE
Създаване на Log файл от batch файл Както знаете идеята на Log файловете е регистриране на дадени събития с времето в което са се случили. Следващия пример показва как може да се запише в Log, кога дадения Batch файл е стартиран (по-точно или кога е изпълнен фрагмента от кода): CODE
Друга алтернатива, която обаче не може да се използва при Windows 2000, NT и МЕ: CODE
И още една алтернатива: CODE
За да работят тези примери е необходимо файлът “log” да съществува в същата директория, където е batch файлът и да бъде празен. Можете да го създадете по описаните по-горе начини за създаване за batch файл. Източник: computerhope.com
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||









