mgr inż. Wacław Libront * Bobowa 2020
ZSO Bobowa, ul. Długoszowskich 1, 38-350 Bobowa, tel: 0183530220, fax: 0183530221, email: sekretariat@zsobobowa.eu, www: zsobobowa.eu
Plikiem wsadowym (skryptem) nazywamy zbiór poleceń zawartych
w pliku tekstowym do wielokrotnego wykorzystania. Skrypty uruchamiamy w taki sam
sposób jak programy wykonywalne. Po uruchomieniu skryptu, wykonywane są w nim
polecenia, jedno po drugim, w takiej samej kolejności w jakiej zostały zapisane.
Pliki wsadowe mają rozszerzenie .bat
W plikach wsadowych mogą być używane wszystkie polecenia, które działają w
wierszu poleceń.
Działanie pliku wsadowego można przerwać kombinacją klawiszy CTRL+PAUSE lub
CTRL+C.
Polecenie ECHO
ECHO tekst
wyświetla na ekranie napis „tekst”
ECHO OFF
nie będą pokazywane polecenia, a jedynie wyniki poleceń
@ECHO OFF
nie wyświetla również samego wywołania polecenia
ECHO ON
wyświetla komendy i wyniki działań
Polecenie REM
Za tym poleceniem możemy wstawiać komentarze
Polecenie PAUSE
Program zostaje zatrzymany do momentu naciśnięcia dowolnego klawisza -
wyświetlany jest napis „Press any key to continue…”
PAUSE >> NUL
nie jest wyświetlany żaden napis
Polecenie CALL
Z pliku wsadowego możemy wywołać inny plik wsadowy
Polecenie START
Z pliku wsadowego możemy wywołać inny program, np. kalkulator
Polecenie GOTO
Polecenie wykonuje skok do etykiety oznaczonej przez dwukropek, np.
:ETYKIETA
Polecenie EXIT
Polecenie kończy wykonywanie pliku wsadowego
Polecenie IF
Instrukcja warunkowa - jeżeli warunek spełniony, to wykonywana jest
instrukcja
IF EXIST test.bat GOTO WYKONAJ
Jeżeli istnieje plik test.bat, to skocz do etykiety :WYKONAJ
IF NOT EXIST test.bat GOTO KONIEC
Jeżeli nie istnieje plik test.bat, to skocz do etykiety :KONIEC
IF ERRORLEVEL numer polecenie
Jeśli wystąpił błąd o numerze NUMER, to wykonaj polecenie
PIERWSZY
Plik TEST.BAT zawiera polecenia
@ECHO off
REM pierwszy test plików wsadowych
ECHO wynik pierwszego testu
PAUSE
Uruchomienie polecenie TEST.BAT spowoduje wyświetlenie napisu „wynik pierwszego testu”, a pod nim napisu: „Press any key to continue…”
WSADOWY DIR
Plik TEST1.BAT zawiera polecenia
@ECHO off
DIR /b *.bat
PAUSE >> null
Uruchomienie polecenie TEST1.BAT spowoduje wyświetlenie wszystkich plików wsadowych w bieżącym folderze
PODAJ IMIĘ
Plik TEST2.BAT zawiera polecenia
@OCHO OFF
ECHO Jak masz na imię?
SET /p imie=
ECHO Witaj %imie%
PAUSE
Program wsadowy wyświetli pytanie o twoje imię, a następnie wyświetli komunikat „Witaj ___”
CZY ISTNIEJE
Plik TEST3.BAT zawiera polecenia
IF EXIST baba.zar GOTO 1
IF NOT EXIST baba.zar GOTO 2
:1
TYPE baba.zar
PAUSE >nul
EXIT
:2
ECHO Nie znaleziono pliku.
PAUSE >nul
EXIT
Jeżeli w bieżącym folderze znajduje się plik baba.zar zostanie wyświetlony, w przeciwnym wypadku zostanie wyświetlony napis „Nie znaleziono pliku”. Po naciśnięciu dowolnego klawisza program kończy działanie.
MENU
Plik MENU.BAT zawiera polecenia
@echo off
:menu
cls
echo STRONY INTERNETOWE
echo [0] - koniec
echo [1] - kalkulator
echo [2] - ZST Gorlice
set /p odp=Wybierz:
if %odp%==0 exit
if %odp%==1 start calc.exe
if %odp%==2 start msedge.exe http://zstgorlice.pl
goto menu
Wyświetlane jest menu w postaci 4 wierszy.
Program oczekuje na wciśnięcie jakiegoś klawisza - polecenie SET /p.
Jeśli naciśnięto klawisz 0, to program jest kończony.
Jeśli naciśnięto klawisz 1, to uruchamiany jest notatnik.
Jeśli naciśnięto klawisz 2, uruchamiana jest przeglądarka ze stroną
zstgorlice.pl
Program zostaje zapętlony i wracamy do początkowego menu
MENU
Inna wersja obsługi menu MENU1.BAT
@echo off
REM wyświetlanie menu
:menu
cls
echo MENU
echo [0] - koniec
echo [1] - kalkulator
echo [2] - ZSO Bobowa
REM oczekiwanie na naciśnięcie klawisza
REM wynik przypisywany do zmiennej ODP
set /p ODP="wybierz:"
rem echo %odp%
REM skok do odpowiedniej cęści programu
if %ODP%==0 goto koniec
if %ODP%==1 goto kalk
if %ODP%==2 goto zso
REM uruchomienie kalkulatora
:kalk
start calc.exe
goto menu
REM uruchomienie strony WWW
:zso
start msedge.exe http://zsobobowa.eu
goto menu
REM koniec działania programu wsadowego
:koniec
exit
Wersja jest wygodniejsza, jeśli każdy wybór z menu musi wywołać kilka pojedynczych instrukcji
KOPIOWANIE
Plik KOPIUJ.BAT zawiera polecenia
@ECHO OFF
SET A="%USERPROFILE%"
SET Z="G:\PROFIL"
CLS
ECHO "... KOPIOWANIE..."
XCOPY %A% %Z% /E /C /R /Y /D
SHUTDOWN.EXE /h
Zmienna A zawiera ścieżkę do profilu użytkownika.
Zmienna Z zawiera ścieżkę do kopii profilu, np. na dysku USB.
Polecenie XCOPY kopiuje wszystkie pliki wraz z podfolderami na dysk USB.
Po skopiowaniu komputer jest hibernowany.
WYBIERZ
Plik KONIEC.BAT zawiera polecenia
@echo off
:menu
cls
ECHO KONIEC? (T/N):
CHOICE /C tn
IF errorlevel 2 goto menu
IF errorlevel 1 break
Jeżeli naciśnięto klawisz t, kończymy działanie pliku wsadowego.
Jeżeli naciśnięty klawisz n, wyświetlamy menu.
Każdy inny klawisz generuje krótki sygnał dźwiękowy.
PETLA
@ECHO OFF
CLS
REM deklarujemy na początku licznik
SET x=0
:petla
REM instrukcje w pętli
ECHO %x% Ala ma kota
REM zwiększamy licznik i jeden
SET /a x=x+1
REM sprawdzamy kiedy koniec pętli
IF %x%==10 GOTO koniec
GOTO petla
:koniec
Deklarujemy licznik i zwiększamy go za każdym razem o jeden.
Sprawdzamy licznik i kończymy program gdy 10.
Jeśli nie 10 to powrót do początku.
KOPIA PULPITU
Skopiować pliki z pulpitu (%userprofile%\pulpit) na dysk Z
SET A="%USERPROFILE%\Pulpit"
SET Z=”z:\”
xcopy %A% %Z% /E /C /R /Y
REKURENCJA
Utwórz plik wsadowy, który będzie działał według następującego schematu:
- utworzy folder
- przekopiuje sam siebie, tzn. plik wsadowy do utworzonego foldera
- wejdzie do utworzonego foldera
ROZMIAR
Utwórz plik wsadowy, za pomocą którego będziemy mogli sprawdzić rozmiar
bieżącego foldera i podrzędnych. Skorzystaj z polecenia DIR, które wyświetla
tylko pliki, a następnie wyszukaj wszystkie wiersze z tekstem "File(s)"
OBRAZKI
Utwórz plik wsadowy, który utworzy plik tekstowy z nazwami wszystkich
obrazków (JPG, PNG, BMP, GIF itp) na pulpicie.
USUWANIE
Utwórz plik wsadowy, który usunie wybrany folder wraz z całą zawartością bez
pytania o pozwolenie.
TWORZENIE
Utwórz plik wsadowy, który spyta o Twoje nazwisko i utworzy folder z wpisaną
nazwą. Jeżeli folder już istnieje wyświetl odpowiedni komunikat.
PLIKI
Utwórz plik wsadowy, który tworzy pliki tekstowe i działa według następującego
schematu:
- z klawiatury wpisujemy nazwę pliku do zmiennej
- z klawiatury wpisujemy ilość tworzonych plików (do zmiennej)
- utwórz zmienną sterującą numerami, np. P i wpisz do niej liczbę 1
- utwórz etykietę START
- utwórz plik o nazwie składającej się ze słowa PLIK i liczby zapisanej w
zmiennej P, rozszerzenie TXT
- zwiększ zmienną P o 1
- skocz do etykiety START