„Pracownia internetowa w każdej szkole” (edycja 2004/2005

Transkrypt

„Pracownia internetowa w każdej szkole” (edycja 2004/2005
Instrukcja numer SPD3/13_01/Z4
„Pracownia internetowa w kaĪdej szkole”
(edycja 2004/2005)
Opiekun pracowni internetowej cz. 3
(PD3)
Pisanie skryptów wiersza poleceĔ - instrukcje warunkowe
Zadanie 04
Instrukcje warunkowe wiersza poleceĔ
Instrukcja omawia wykorzystanie instrukcji warunkowych do pisania skryptów wiersza
poleceĔ.
Przykâad 10
Podstawowe zastosowanie instrukcji warunkowej IF
Nazwa pliku wykonywania
Wywoâanie
Przekopiuj z pâyty
Uruchom wiersz poleceĕ
p10.cmd
p10.cmd
@echo off
cls
set Imie1=Darek
set imie2=DAREK
set IMIE3=Darek
if NOT %imie1%==%imie2%
Ä echo To jest prawda pierwsza, ze %Imie1% nie jest rowne %imie2%
if %imie1%==%imie3% echo To jest prawda druga , ze %Imie1% = %imie3%
if /i %imie2%==%imie3%
Ä echo To jest prawda trzecia , ze %Imie2% = %imie3% gdy nie biore
Ä pod uwage wielkosci znakow
pause
Notatka – wnioski z ýwiczenia
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Darek, Janusz, Andrzej, Robert
NR SPD3/13_01/z4
[v. 1.1B]
Strona 1/4
Pisanie skryptów wiersza poleceĔ - instrukcje warunkowe
Polecenie do przykâadu 11
1. Stwórz i zapisz pod nazwą lista.txt plik zawierający nastĊpującą treĞü:
Jan Kowalski
Jan Masztalski
Beata Tyczka
Magda Szybka
Przykâad 11
Sprawdzenie w skrypcie czy plik o danej nazwie istanieje i podjĊcie odpowiedniej do odpowiedzi akcji.
Nazwa pliku wykonywania
Wywoâanie
Przekopiuj z pâyty
Uruchom wiersz poleceĕ
p11.cmd
p11.cmd
@echo off
cls
set nazwa_pliku=lista.txt
if exist %nazwa_pliku% echo Plik %nazwa_pliku% istnieje
pause
Notatka – wnioski z ýwiczenia
..................................................................................
..................................................................................
..................................................................................
Przykâad 12
Instrukcja IF oraz ELSE
Nazwa pliku wykonywania
Wywoâanie
Przekopiuj z pâyty
Uruchom wiersz poleceĕ
p12.cmd
p12.cmd
@echo off
cls
set nazwa_pliku=lista10.txt
if exist %nazwa_pliku% (echo Plik %nazwa_pliku% istnieje) ELSE (echo Plik
Ä %nazwa_pliku% nie istnieje)
pause
Notatka – która czċğý instrukcji IF zostaâa wykonana ? Dlaczego?
..................................................................................
..................................................................................
..................................................................................
© by Darek, Janusz, Andrzej, Robert
NR SPD3/13_01/z4
[v. 1.1B]
Strona 2/4
Pisanie skryptów wiersza poleceĔ - instrukcje warunkowe
Przykâad 13
Operatory porównania w skryptach wiersza poleceĔ.
p13.cmd
Nazwa pliku wykonywania
p13.cmd
Wywoâanie
Przekopiuj z pâyty
Uruchom wiersz poleceĕ
@echo off
cls
set liczba1=123
set liczba2=00008
if %liczba1% GTR %liczba2% echo Liczba1 (%liczba1%) jest wieksza od Liczba2
Ä (%liczba2%)
pause
Notatka – co zostanie przypisane pod liczba2 - 8 czy 00008 i dlaczego?
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
Notatka – czego siċ nauczyliğmy?
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Darek, Janusz, Andrzej, Robert
NR SPD3/13_01/z4
[v. 1.1B]
Strona 3/4
Pisanie skryptów wiersza poleceĔ - instrukcje warunkowe
Podstawowe informacje o poleceniach i skâadni
Wykonuje polecenie, jeĪeli warunek jest speániony
IF warunek polecenie
IF NOT warunek polecenie Wykonuje polecenie, jeĪeli warunek nie jest speániony
IF warunek (
polecenie_1
polecenie_2
…
)
IF warunek polecenie_1
Ä ELSE polecenie_2
IF warunek (
polecenie_1
polecenie_2
…
) ELSE (
polecenie_3
polecenie_4
…
)
warunek
(NOT moĪe wystĊpowaü przy kaĪdym warunku – w dalszym opisie jest wiĊc
pomijany w celu zwiĊkszenia czytelnoĞci)
Wykonuje polecenia zawarte w nawiasie okrągáym ( ) jeĞli warunek jest
speániony (nie speániony w przypadku uĪycia dodatkowo operatora NOT).
Otwarcie nawiasu musi nastąpiü w wierszu, w którym wystĊpuje instrukcja IF
KaĪde polecenie musi byü zapisane w oddzielnym wierszu
Wykonuje pelecenie_1 w przypadku speánienia warunku, lub polecenie_2
w przeciwnym razie (ELSE stanowi rozszerzenie instrukcji IF)
Wykonuje polecenia 1 i 2 zawarte w nawiasie okrągáym ( ) jeĞli warunek jest
speániony (nie speániony w przypadku uĪycia dodatkowo operatora NOT).
Wykonuje polecenia 3 i 4 w porzypadku przeciwnym.
Otwarcie nawiasu musi nastąpiü w wierszu, w którym wystĊpuje instrukcja IF
KaĪde polecenie musi byü zapisane w oddzielnym wierszu.
Instrukcja ELSE musi wystĊpowaü w tym samym wierszu co zamkniĊcie
nawiasu naleĪącego do IF i otwarcie nawiasu naleĪącego do niej.
Nawiasy mogą wystąpiü tylko przy instrukcji IF lub tylko przy instrukcji ELSE,
lub jak w przykáadzie – przy obu jednoczeĞnie.
MoĪliwe są zagnieĪdĪenia wielu instrukcji warunkowych w sobie.
wartoĞü_A operator wartoĞü_B
gdzie dostĊpne są nastĊpujące operatory
EQU lub == - równe
NEQ - nie równe
LSS
- mniejsze niĪ
LEQ
- mniejsze niĪ lub równe
GTR - wiĊksze niĪ
GEQ - wiĊksze niĪ lub równe
warunek
IF /i
EXIST nazwa_pliku
zwraca prawdĊ, jeĞli istnieje plik nazwa_pliku
Znacznik /i powoduje ignorowanie wielkoĞci znaków przy porównywaniu
áaĔcuchów tekstowych
Notatki dotyczĆce poleceĕ i ich skâadni
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Darek, Janusz, Andrzej, Robert
NR SPD3/13_01/z4
[v. 1.1B]
Strona 4/4