Rozdzia 2
System WINDOWS XP podstawowe polecenia DOS
2.2.1 Pliki wsadowe
Plik wsadowy (batch file) umo liwia wykonanie dowolnego ci gu polece systemu
MS-DOS. Za jego pomoc mo na w prosty sposób zautomatyzowa najcz ciej wykonywane
czynno ci, takie jak kopiowanie, kasowanie, tworzenie pliku lub folderu, a wi c
przetwarzanie tekstu lub powtarzaj ce si zadania administratora systemu. Z punktu widzenia
systemu operacyjnego plikiem wsadowym jest ka dy plik, którego nazwa posiada
rozszerzenie bat.
Po wydaniu dowolnego polecenia interpreter polece command.com sprawdza
w pierwszej kolejno ci czy wydana komenda jest poleceniem wewn trznym
(interpretowanym przez command.com) lub zewn trznym i w przypadku odpowiedzi
pozytywnej wykonuje wydan komend . Je eli jednak interpreter nie rozpoznaje polecenia
to przyjmuje, e u ytkownik za da uruchomienia programu lub pliku wsadowego.
Programy wsadowe na ogó nie wymagaj interfejsu graficznego, cz sto uruchamiane
w trybie tekstowym, czyli z wiersza polece . W systemie Windows mog by tak e
uruchamiane z wiersza polece zredukowanego do okna Uruchom w menu Start,
lub eksploratora Windows przez uruchomienie pliku.
Podstawowe komendy i ich zastosowanie
W plikach wsadowych mog by u ywane wszystkie polecenia, które dzia aj
w wierszu polece . Dodatkowo w plikach tych spotyka si równie pewne komendy
specyficzne dla plików wsadowych, takie jak:
ECHO tekst wy wietli na ekranie napis tekst
ECHO OFF polecenia nie b pokazywane, a jedynie wyniki ich dzia ania (je li
polecenie poprzedzimy znakiem @ to równie bie ce polecenie nie
zostanie wy wietlone
ECHO ON w cza tryb wy wietlania komend
REM za tym poleceniem mo na wstawia tekst komentarza
PAUSE zatrzymywanie dzia ania programu do czasu naci ni cia dowolnego klawisza
CALL polecenie do wywo ywania innego pliku wsadowego
GOTO polecenie skoku do etykiety oznaczonej przez postawienie znaku : , np.
GOTO koniec
EXIST polecenie sprawdza, czy w podanej cie ce znajduje si nazwa pliku wpisana
jako argument wyszukiwania
IF instrukcja warunkowa je eli je eli warunek jest prawdziwy to wykonaj
instrukcje, np.
IF EXIST c:\nazwa.bat GOTO koniec
(je eli istnieje plik c:\nazwa.bat to skocz do etykiety koniec)
SHIFT polecenie zmienia warto parametru pliku wsadowego
FOR p tla (instrukcja iteracyjna) s y do wielokrotnego wykonywania podobnych
czynno ci
wiczenie 1. Pierwszy plik wsadowy
Napisz w notatniku poni szy fragment i zapisz w folderze E:\TEMP z nazw 1.bat
(je li TEMP nie istnieje to go utwórz z konsoli komend cmd), a nast pnie uruchom go
z eksploratora Windows lub z konsoli komend.
REM To jest komentarz - nie bedzie widoczny i wykonywany :)
ECHO To moj pierwszy plik wsadowy
PAUSE
ród o 1. Wersja pierwotna pliku 1. bat
Pracownia systemów komputerowych Piotr Cymerman
23
Rozdzia 2
System WINDOWS XP podstawowe polecenia DOS
Efekt dzia ania pliku 1.bat:
Rys. 2.2.21. Wynik dzia ania pliku wsadowego 1.bat
W pliku 1.bat dopisz polecenie ECHO OFF i zapisz plik - po ponownym uruchomieniu pliku
wsadowego 1.bat efekt b dzie nast puj cy:
Rys. 2.2.22. Po dopisaniu w pierwszej linii polecenia ECHO OFF
Teraz dopisz symbol @ przed dopisanym poleceniem ECHO OFF, zapisz plik i porównaj efekt
dzia ania:
Rys. 2.2.23. Po dopisaniu symbolu @ przed poleceniem ECHO OFF
Jakie wnioski wyci gniesz?
wiczenie 2. Tworzenie folderów, instrukcja warunkowa, instrukcja skoku
Napisz plik wsadowy 2.bat, który b dzie tworzy folder PIERWSZY w folderze
E:\TEMP. U yj w pliku polece wewn trznych MD (do tworzenia folderów), a tak e CD do
ustawienia folderu bie cego na E:\TEMP\PIERWSZY. Na pocz tku zastosuj równie
polecenie CLS, aby wyczy ci ekran dzia anie pliku nie powinno wy wietla instrukcji,
a jedynie ich efekt (@ECHO OFF).
@ECHO OFF
REM Drugi plik wsadowy - tworzenie folderu
CLS
MD E:\TEMP\PIERWSZY
ECHO Utworzono folder E:\TEMP\PIERWSZY
ECHO Ustawiam folder biezacy na E:\TEMP\PIERWSZY
E:
CD E:\TEMP\PIERWSZY
PAUSE
ród o 2. Zawarto pliku 2.bat
Pracownia systemów komputerowych Piotr Cymerman
24
Rozdzia 2
System WINDOWS XP podstawowe polecenia DOS
Efekt dzia ania pliku 2.bat:
Rys. 2.2.24. Okno konsoli po uruchomieniu pliku 2.bat
Uruchom go ponownie i zwró uwag na dodatkowy komunikat, który si tam znajdzie:
Rys. 2.2.25. Okno konsoli po ponownym uruchomieniu pliku 2.bat
Zmodyfikuj plik 2.bat (i zapisz go z nazw 3.bat) tak, aby w sytuacji, gdy istnieje folder
E:\TEMP\PIERWSZY wy wietli jego zawarto , a gdy nie istnieje to ma utworzy
wspomniany folder. Musisz u instrukcji warunkowej IF EXIST oraz oraz IF NOT EXIST,
a tak e tzw. etykiet (:nazwa_etykiety) i instrukcji skoku GOTO nazwa_etykiety (patrz
Podstawowe komendy i ich zastosowanie na pocz tku tego dokumentu).
1 @ECHO OFF
2 REM Trzeci plik wsadowy - na bazie pliku 2.bat
3 CLS
4 IF NOT EXIST E:\TEMP\PIERWSZY GOTO utworz
5 IF EXIST E:\TEMP\PIERWSZY GOTO blad
6 :blad
7 ECHO Folder o takiej nazwie juz istnieje!
8 ECHO Oto jego zawartosc
9 DIR E:\TEMP\PIERWSZY
10 GOTO koniec
11 :utworz
12 MD E:\TEMP\PIERWSZY
13 ECHO Utworzono folder E:\TEMP\PIERWSZY
14 GOTO koniec
15 :koniec
16 ECHO Ustawiam folder biezacy na E:\TEMP\PIERWSZY
17 E:
18 CD E:\TEMP\PIERWSZY
19 PAUSE
ród o 3. Zawarto pliku 3.bat
Jak to dzia a?
Zaczn od linii 4 , poniewa linie 1 2 3 nie wymagaj adnych wyja nie . A wi c
w linii 4 sprawdzane jest czy nie istnieje (NOT EXIST) folder E:\TEMP\PIERWSZY je li to
prawda (nie istnieje folder PIERWSZY) to program przeskakuje do linii 11 (GOTO utworz),
czyli do miejsca oznaczonego etykiet utworz. Poniewa w plikach wsadowych linie
wykonywane s kolejno (poza instrukcjami skoku GOTO) to wykonane zostanie polecenie
z linii 12 (utworzony zostaje folder), nast pnie w 13 wy wietlony zostanie napis i w kroku
kolejnym 14 znowu jest polecenie skoku tym razem do etykiety koniec, czyli do linii 15 .
Je li przeanalizujesz dalsze kroki to dojdziesz do wniosku, e po wykonaniu polecenia
Pracownia systemów komputerowych Piotr Cymerman
25
Rozdzia 2
System WINDOWS XP podstawowe polecenia DOS
z linii 16 wy wietlony zostanie napis, nast pnie po wykonaniu polecenia z linii 17
zmieniony zostanie dysk bie cy na E: (nawet gdy ju by taki ustawiony), nast pnie nast pi
ustawienie folderu bie cego na E:\TEMP\PIERWSZY w linii 18 i na koniec wstrzymanie
dzia ania programu (linia 19 ).
Je li folder PIERWSZY nie istnieje to b dzie tak jak w powy szym opisie dzia ania (patrz
równie na rys. 2.2.27). A co b dzie jak w linii 4 oka e si , e folder istnieje? Nie zostanie
wykonana instrukcja skoku GOTO utworz tylko wykonane zostanie polecenie z linii 5 , które
sprawdza czy istnieje (EXIST) folder E:\TEMP\PIERWSZY je li to prawda to wykonane
zostanie polecenie skoku do linii 6 (GOTO blad). Skoro taki skok nast pi to wykonane
zostanie nast pne polecenie z kolejnej linii 7 , czyli wy wietlenie komunikatu, dalej
polecenie z linii 8 wy wietlenie nast pnego komunikatu, potem wy wietlenie zawarto ci
folderu E:\TEMP\PIERWSZY poleceniem z linii 9 i po tym wszystkim po wykonaniu
polecenia z linii 10 (skok do etykiety koniec linia 15 ) zostan wykonane kolejno
omawiane ju komendy 16 17 18 i 19 (wynik dzia ania jak na rys. 2.2.26).
Je li nie usun folderu PIERWSZY to wynik dzia ania pliku 3.bat jest nast puj cy:
Rys. 2.2.26. Okno konsoli po uruchomieniu pliku 3.bat
Teraz usu folder PIERWSZY - je li b dzie odmowa to zmie bie cy dysk na inny, np. H:
i spróbuj usun jeszcze raz. Ponownie uruchom plik 3.bat i zaobserwuj czy zachowa si tak
samo jak na rys. 2.2.27:
Rys. 2.2.27. Okno konsoli po ponownym uruchomieniu pliku 3.bat
Pracownia systemów komputerowych Piotr Cymerman
26
Rozdzia 2
System WINDOWS XP podstawowe polecenia DOS
Przyjrzyj si plikowi 3.bat czy nie b dzie optymalnie je li zmodyfikujesz go tak jak
w ródle 4? Efekt dzia ania b dzie identyczny przeanalizuj ród o 4 (zapisz w pliku 4.bat)
i wska ró nice mi dzy obydwoma plikami.
@ECHO OFF
REM Czwarty plik wsadowy - zoptymalizowany plik 3.bat
CLS
IF NOT EXIST E:\TEMP\PIERWSZY GOTO utworz
ECHO Folder o takiej nazwie juz istnieje!
ECHO Oto jego zawartosc
DIR E:\TEMP\PIERWSZY
GOTO koniec
:utworz
MD E:\TEMP\PIERWSZY
ECHO Utworzono folder E:\TEMP\PIERWSZY
:koniec
ECHO Ustawiam folder biezacy na E:\TEMP\PIERWSZY
E:
CD E:\TEMP\PIERWSZY
PAUSE
ród o 4. Zawarto pliku 4.bat zoptymalizowany plik 3.bat
Zadanie 1. Tworzenie plików tekstowych
Napisz plik wsadowy 5.bat, który b dzie umo liwia utworzenie i edycj pliku
tekstowego test.txt w folderze E:\TEMP\PIERWSZY. W kodzie powinny by
zaimplementowane zabezpieczenia przed nadpisaniem istniej cego pliku. Je li uruchomimy
plik za pierwszym razem to powinien utworzy plik test.txt (rys. 2.2.28). Po ponownym
uruchomieniu (plik powinien istnie po pierwszym uruchomieniu) nie mo emy nadpisa pliku
test.txt nale y wy wietli jego zawarto (rys. 2.2.29).
Rys. 2.2.28. Utworzenie pliku test.txt
Rys. 2.2.29. Wy wietlenie zawarto ci pliku test.txt (je li istnieje)
Pracownia systemów komputerowych Piotr Cymerman
27
Wyszukiwarka
Podobne podstrony:
Pliki wsadowe, partycja, sektor, klaster, FAT, NTFScw 6 pliki01 cw wprowpliki wsadowepliki wsadoweĆw inż Pń 2015 part 01 ćw 1 i 2 (1)acad cw 01 (2)Matematyka III (Ćw) Lista 01 Liczby zespolone OdpowiedziCw kolektory sloneczne ver1 01Ćw nr 01 Pneumatyczne sterowanie ruchem łyżki odlewniczej w urządzeniu do zalewania form odlewniczTurboPascal 19 01 2010 TP PLIKIwięcej podobnych podstron