BATCH Zbiór do przetwarzania zleceń użytkownika
Batch nie jest komendą,
lecz raczej zbiorem
operacji na zbiorach,
dzięki którym
komendy i programy mogą być wykonywane.
Jest to
po prostu zbiór
poleceń ułożonych przez
użytkownika celem
dokonania automatyzacji wykonania
niektórych prostych i
złożonych czynności.
Najczęściej stanowi to
ułatwienie
wykonania rutynowych
działań. Polecenia pisane są w
osobnych
liniach
tak jak byłyby
pisane "ręcznie" bezpośrednio po
zgłoszeniu się
systemu operacyjnego. Zbiór taki po
wywołaniu
do wykonania
analizowany jest przez
system (konkretnie
COMMAND.COM) i
wykonywany linia po linii choć
następować mogą
skoki do
innych części tego
zbioru lub wywołania
innych
programów. Wykonanie
takiego zbioru poleceń
jest stosunkowo
powolne, gdyż przed
wykonaniem nie jest
on w żaden sposób
kompilowany czy też
optymalizowany i zawsze pozostaje w
swej
pierwotnej postaci.
Można go zatem bardzo łatwo
poprawiać i
przystosowywać do
nowych potrzeb. W
celu wykonania takiego
zbioru poleceń
należy jedynie napisać
nazwę tego zbioru
i
nacisnąć ENTER.
UWAGA1: Jego
wykonanie można w dowolnym momencie przerwać przez
naciśnięcie klawiszy
Ctrl-Break lub Ctrl-C.
Po tym nastąpi
zapytanie, czy faktycznie
chcemy przerwać wykonywanie
tych
poleceń. Naciśnięcie
klawisza Y od Yes potwierdza to, a klawisz
N od No zaprzecza i
umożliwia dalsze przetwarzanie poleceń.
UWAGA2: Jego
wykonanie można chwilowo zawiesić przez
naciśnięcie
klawiszy Ctrl-S, po czym wznowić
dowolnym klawiszem.
Uwagi słownikowe:
Określenie Batch
File ma jak dotychczas fatalne tłumaczenie
na
język polski. Ciągle
zbiory typu Batch File określa się
mianem
plików wsadowych, co
wynika z tłumaczenia. Jednak
określenie
to, jest po prostu
zaszłością z dużych komputerów. Oznacza ono,
że rzekomo do
komputera coś się wsadza. Tak było na dużych komputerach
typu ICL, ODRA
1305, RIAD itd. Używano wtedy
tzw.
czytników kart
perforowanych, a uruchomienie jakiegoś
programu
(zadania) polegało
właśnie na wsadzeniu pliku kart z
instrukcjami
do tego czytnika i
przyciśnięciu ich metalową
klapką.
Nie mówiło się
zbioru kart lecz właśnie pliku kart. Stąd
także
przeszło określenie
zbiorów, które są przecież
znacznie ogólniejsze,
jako plików. Dziś
używamy obu znaczeń co często wprowadza
zamieszanie. W tej
chwili, ten sposób komunikacji z
komputerem
jest już historią, a
zwłaszcza na małych PC! Można tu
zatem zaproponować
zamiast 'pliku wsadowego' następujące określenia:
- zbiór do
przetwarzania grupowego czy potokowego
- makro użytkowe
czy systemowe, lub też krótko makro
- makrodefinicja
- program
Batch (polecane określenie przez
MICROSOFT)
Użycie:
POSTAĆ:
nazwa_zbioru
[parametry]
ZNACZENIE: Umożliwia wykonanie sekwencji komend, zapisanej na podanym
zbiorze.
Struktura zbioru musi być zgodna ze strukturą typu
BATCH, a jego
nazwa musi mieć rozszerzenie .BAT. Jeśli
Dos
nie może
znaleźć podanego zbioru,
przeszukuje katalogi
bieżącej ścieżki.
Podczas wykonywania komend
mogą być
przekazywane
parametry z zewnątrz. Oprócz standardowych
komend używać
można komend specjalnych: ECHO, FOR,
GOTO,
SHIFT, PAUSE,
CALL, IF oraz REM, opisanych poniżej.
Przerwanie
wykonywania
programu BATCH następuje po naciśnięciu
klawiszy
Ctrl-Break, a chwilowe zawieszenie po Ctrl-S. Wewnątrz
programu BATCH
można wywoływać kolejne tego typu pro-
gramy.
Programowi BATCH
można przekazać parametry
wywołania, które
występują pod
zmiennymi określanymi jako:
%0
%1 %2 %3 %4 %5 %6 %7 %8 %9
gdzie: %0 określa pełną nazwę zbioru BATCH
%1 do
%9 określa kolejne parametry
wywołania
Np. Wywołanie
zbioru BATCH: c:\batch\test.bat coś
c: /s
spowoduje
uruchomienie do wykonania programu Batch
test.bat
z kartoteki
C:\BATCH a pod kolejnymi zmiennymi będą parametry
%0 - c:\batch\test.bat
%1 - coś
%2 - c:
%3 - /s
Możemy
analizować zatem do 9 parametrów, chyba że użyliśmy
opisanej poniżej
komendy SHIFT to wtedy ilość parametrów może
być dowolna.
UWAGA:
W zbiorach BATCH
można odwoływać się także
do dowolnych
zmiennych
zapisanych w otoczeniu systemowym (patrz zlecenie
SET) jako:
%zmienna% . Na przykład jeśli
chcemy odwołać
się do zmiennej PATH określającej ścieżkę
poszukiwania
przez system
wywoływanego zbioru, wystarczy użyć wyrażenia:
%PATH%.
Szczegóły znajdziesz w przykładach makrodefinicji
ZIPEXE.BAT,
MNIEJ.BAT oraz pod hasłem BATY.
Zobacz w tym
celu BATY, gdzie
znajdziesz wiele przykładów i uwag co do
tworzenia
zbiorów typu Batch File.
AUTOEXEC.BAT
Podczas uruchamiania
komputera system operacyjny szuka go
na tym
dysku, z którego jest
uruchamiany. Jeżeli taki zbiór istnieje, to są
wykonywane wszystkie
zawarte w nim komendy. Zbiór ten tworzy się np.
za pomocą prostej
komendy:
COPY CON: AUTOEXEC.BAT
Wszystkie
występujące po niej komendy i dyrektywy
są wpisywane do
zbioru AUTOEXEC.BAT. Po
zakończeniu wprowadzania należy
wcisnąć
klawisz F6, a następnie
RETURN. Wówczas utworzy się na dysku zbiór o
nazwie
AUTOEXEC.BAT.
Jeśli natomiast taki
zbiór jest już utworzony a potrzeba dopisać
do
niego tylko jedną linię,
to najprostszym rozwiązaniem może być
zlecenie: echo tekst >> c:\autoexec.bat
gdzie 'tekst' jest
zestawem słów, które chcemy dopisać.
Zbiory te można także
utworzyć i modyfikować za pomocą edytora EDLIN
oraz nowo dołączonego
EDIT.
NASTĘPUJĄCE KOMENDY
MOGĄ BYĆ UŻYWANE W PROGRAMACH TYPU BATCH:
================================================================
Zlecenie Działanie
--------------------------------------------------------------------
CALL Wywołuje inną makrodefinicję zapewniając
powrót do
zbioru
wywołującego
ECHO Włącza lub wyłącza echo
FOR Wykonuje zlecenie wielokrotnie dla
grupy zbiorów
GOTO Przenosi sterowanie do linii leżącej
po wyszczególnionej
etykiecie BATCH
IF Wykonuje zlecenie, jeżeli spełniony
zostanie warunek
PAUSE Zawiesza wykonanie
makrodefinicji aż naciśnie
się
dowolny
klawisz, a Ctrl-Break lub Ctrl-C
przerywa jej
wykonanie.
REM Stanowi komentarz wewnątrz
makrodefinicji
SHIFT Zwiększa liczbę dostępnych parametrów w
makrodefinicji