Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 Кратко описание на Batch файловете
  1. Създаване на batch файл
     
Автор  plamenSm (19.04.2008 11:49)  съобщение до автора
Погледнат  3690 пъти  добави към любими
Оценка  добави коментар
Гласове  --  изпрати на приятел
Коментари  (0)  абонирай се за Windows
    Страница 1 / 1

 



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
1
2
3
pause
dir c
:\windows
dir c
:\window\system

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
1
2
3
4
@echo off
echo Hello this is a test batch file
pause
dir c
:\windows

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
1
ECHO Hello %1

и го стартираме така: “myname Bob” ще получим резултат:

CODE
1
Hello Bob


: (: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
1
2
3
4
@ECHO OFF
ECHO
- %1
SHIFT
ECHO
- %1

Стартиране: test one two

Резултат:- one- two


START

 Стартира асинхронно (без да изчаква резултат) Windows програма.

(За Windows версии под ’95, командата е „WIN”)

Пример: START C:\WINDOWS\CALC.EXE


Примери

Условни преходи в зависимост от потребителски избор

В следващия пример е показано условно разклонение в зависимост от избор на потребителя. На местата на „ECHO YOU HAVE PRESSED ...” можете да поставите друг по-смислен код.

За Windows 2000 и по-високи версии вместо “CHOICE” запишете “SET”.


CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@ECHO OFF
REM
- LABEL INDICATING THE BEGINNING OF THE DOCUMENT.
:
BEGIN
CLS
REM
- THE BELOW LINE GIVES THE USER 3 CHOICES (DEFINED AFTER /C:)
CHOICE
/N /C:123 PICK A NUMBER (1, 2, or 3)%1
REM - THE NEXT THREE LINES ARE DIRECTING USER DEPENDING UPON INPUT
IF ERRORLEVEL ==3 GOTO THREE
IF ERRORLEVEL ==2 GOTO TWO
IF ERRORLEVEL ==1 GOTO ONE
GOTO END
:THREE
ECHO YOU HAVE PRESSED THREE
GOTO END
:TWO
ECHO YOU HAVE PRESSED TWO
GOTO END
:ONE
ECHO YOU HAVE PRESSED ONE
:END


Стартиране на Windows програми от Batch Файл

За стартиране на програма от batch файл е предвидена командата “Start”. Например за стартиране на Notepad можете да запишете следния ред в Batch файла:

CODE
1
START /max "C:\Windows\Notepad.exe"

„/max” задава стартиране на цял екран. Кавичките са необходими, ако в пътя има интервали, иначе може да не се поставят.

Това разбира се е пример за принципа. За Windows 2000 и NT директорията, където по подразбиране се намира Windows e \WINNT.


Задържане на изпълнението за определено време

По-долния ред е пример за прекъсване изпълнението на batch файл за определен период (от 5 до 99) секунди (в примера 15):

CODE
1
TYPE NUL | CHOICE.COM /N /CY /TY,15 >NUL


Създаване на Log файл от batch файл

Както знаете идеята на Log файловете е регистриране на дадени събития с времето в което са се случили. Следващия пример показва как може да се запише в Log, кога дадения Batch файл е стартиран (по-точно или кога е изпълнен фрагмента от кода):

CODE
1
2
ECHO. |TIME > TIME
COPY LOG
+TIME

Друга алтернатива, която обаче не може да се използва при Windows 2000, NT и МЕ:

CODE
1
2
3
4
echo @prompt set date=$d$_set time=$t$h$h$h > {a}.bat
%comspec% /e:2048 /c {a}.bat > {b}.bat
for %%v in ({b}.bat del) do call %%v {?}.bat
echo
%date% %time% >> log

И още една алтернатива:

CODE
1
echo. |time |find "current" >> log

За да работят тези примери е необходимо файлът “log” да съществува в същата директория, където е batch файлът и да бъде празен. Можете да го създадете по описаните по-горе начини за създаване за batch файл.



Източник: computerhope.com



   


Ключови думи: Windows .bat batch dos .bat файл Batch файл Log файл Създаване на batch файл.


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008