PLIKI WSADOWE
Korzystając z plików wsadowych, zwanych również programami wsadowymi lub skryptami, moż-
na uprościć rutynowe lub wielokrotnie wykonywane zadania. Plik wsadowy jest niesformatowanym pli-
kiem tekstowym zawierającym jedno lub więcej poleceń. Nazwa pliku ma rozszerzenie bat lub cmd. Gdy
nazwa pliku zostanie wpisana w wierszu polecenia, program Cmd.exe wykonuje kolejne polecenia w pliku.
Podstawowe polecenia wykorzystywane w plikach wsadowych:
1. ECHO Włącza i wyłącza funkcję wyświetlania poleceń lub wyświetla komunikat. Polecenie echo
użyte bez parametrów wyświetla bieżące ustawienie funkcji wyświetlania poleceń.
Składnia
echo [{on|off}][komunikat]
{on|of}
określa, czy ma być włączona funkcja wyświetlania poleceń.
komunikat
określa tekst, który ma być wyświetlany na ekranie.
@
zapobiega wyświetlaniu wiersza znajdującego się bezpośrednio po znaku.
echo.
wyświetla pusty wiersz
Przykład Program wsadowy wyświetlający komunikat
@echo off
echo.
echo To jest
echo mój pierwszy
echo plik wsadowy
echo.
2. REM komenda ignorowana. Pozwala na umieszczenie komentarzy w pliku wsadowym.
Składnia
rem [komunikat]
Przykład
@echo off
rem jest to program wyswietlajacy komunikat
echo.
echo To jest
echo mój pierwszy
echo plik wsadowy
echo.
3. PAUSE wstrzymuje przetwarzanie programu wsadowego i wyświetla komunikat monitujący użyt-
kownika o naciśnięcie dowolnego klawisza w celu kontynuacji.
Składnia
pause
Przykład Zastosowanie polecenia pause
@echo off
pause
echo Program zakonczony
1
4. GOTO powoduje skok do miejsca oznaczonego etykietą. Polecenie to używa tylko pierwszych ośmiu
znaków etykiety. Określona wartość parametru etykieta musi być zgodna z etykietą w programie
wsadowym. Etykieta w programie wsadowym musi rozpoczynać się od dwukropka.
Składnia
goto etykieta
Przykład Program wypisuje aż do przerwania zadany tekst.
@echo off
:start
echo Plik wsadowy
goto start
5. IF wykonuje przetwarzanie warunkowe w programach wsadowych.
Składnia
if [not] errorlevel numer polecenie [else wyrażenie]
if [not] ciąg1==ciąg2 polecenie [else wyrażenie]
if [not] exist nazwa pliku polecenie [else wyrażenie]
Polecenia IF nie można używać do bezpośredniego sprawdzenia istnienia katalogu, ale urządzenie
zerowe znajduje się w każdym katalogu. Można więc sprawdzić, czy jest urządzenie zerowe, aby
ustalić, czy istnieje katalog.
Przykład Następujący program sprawdza istnienie katalogu i w zależności czy sistnieje usuwa go
bądź tworzy.
if exist c:\katalog\nul (rd c:\katalog) else (md c:\katalog)
6. CALL Wywołuje inny plik wsadowy, a po jego zakończeniu powraca do macierzystego. Program
może też wywoływać samego siebie.
Składnia
call [[dysk:][ścieżka]nazwa pliku[parametry wsadowe]][:etykieta[argumenty ]]
Przykład
call wsadowy.bat
Ćwiczenie Napisać plik wsadowy, który uruchomi inny plik wsadowy, który utworzy katalog o
nazwie WSADOWY, następnie program macierzysty skopiuje do katalogu WSADOWY wszystkie
pliki z rozszerzeniem bat do tego katalogu.
7. FOR wykonuje określone polecenie dla każdego pliku w zestawie plików.
Składnia
for {%zmienna|%%zmienna} in (zestaw ) do polecenie [ opcje wiersza polecenia]
{%zmienna|%%zmienna}
Wymagany. Reprezentuje parametr wymienny. Parametru %zmienna można używać do wykony-
wania polecenia for z wiersza polecenia. Parametru %%zmienna można używać do wykonywania
polecenia for w programie wsadowym.
(zestaw )
Wymagany. Określa jeden lub więcej plików, katalogów, zakresów wartości lub ciągów tekstowych,
2
które mają być przetworzone przy użyciu określonego polecenia. Nawiasy są wymagane.
polecenie
Wymagany. Określa polecenie, które ma być wykonane w przypadku każdego pliku, katalogu, za-
kresu wartości lub ciągu tekstowego zawartego w zestawie określonym przez parametr (zestaw ).
opcje wiersza polecenia
Określa wszystkie opcje wiersza polecenia, które mają być użyte z określonym poleceniem.
Parametr zestaw może reprezentować jedną grupę plików lub kilka grup plików. Aby określić zestaw
plików, można używać symboli wieloznacznych (* i ?). Oto kilka przykładów prawidłowych zestawów
plików:
(*.doc)
(*.doc *.txt *.me)
(sty*.doc sty*.rpt lut*.doc lut*.rpt)
(ar??1991.* ap??1991.*)
Przykład Aby wyświetlić zawartość wszystkich plików z rozszerzeniami nazwy .doc lub .txt w
bieżącym katalogu przy użyciu zmiennej %f, należy wpisać:
for %f in (*.doc *.txt) do type %f
Korzystanie z parametrów wsadowych
Parametrów wsadowych można używać w dowolnym miejscu w pliku wsadowym. Program cmd.exe zapew-
nia zmienne rozszerzeń parametrów wsadowych od %0 do %9. Podczas używania parametrów wsadowych
w pliku wsadowym zmienna %0 jest zamieniana na nazwą pliku wsadowego, a zmienne od %1 do %9 są
zamieniane na odpowiednie argumenty wpisane przez użytkownika w wierszu polecenia.
Na przykład aby skopiować zawartość folderu Folder1 do folderu Folder2, gdzie zmienna %1 jest zamie-
niana na wartość Folder1, a zmienna %2 jest zamieniana na wartość Folder2, należy wpisać następujące
polecenie w pliku wsadowym wsad.bat:
xcopy %1\*.* %2
Aby uruchomić ten plik, należy wpisać np:
wsad.bat C:\folder1 D:\folder2
Efekt tego polecenia jest taki sam, jak efekt następującego polecenia wpisanego w pliku wsadowym:
xcopy C:\folder1 \*.* D:\folder2
3