UWAGA! Promocja dla firm - MICROSOFT OFFICE 365  na 12 miesiecy ZA DARMO! Tylko na CentrumXP.pl!
Wielka promocja Office 365 na CentrumXP.pl!
Do góry Skomentuj

If [not] ciag1==ciag2 komenda

If [not] ciag1==ciag2 komenda

Autor: Paweł Wujczyk Opublikowano: 9 marca 2006 Odsłon: 6 106

If [not] ciag1==ciag2 komenda - Instrukcja warunkowa, wykonująca komendę jeżeli ciag1 jest równy ciag2.

1: @echo off
2: if "%1"=="utworz" goto nowe
3:
if "%1"=="skasuj" goto skasuj
4:
goto help
5:
:nowe
6:
echo .>test.txt
7:
echo Plik zostal utworzony.
8:
goto end
9:
:skasuj
10:
del test.txt
11:
echo Plik zostal skasowany.
12:
goto end
13:
:help
14:
echo Nalezy podac parametr utworz lub skasuj.
15:
:end
16:
echo .

Program porównuje pierwszy parametr najpierw z wartością "utworz". Jeżeli porównanie jest prawdziwe zaczynają wykonywać się wiersze od piątego do ósmego. W linijce ósmej program przeskakuje na koniec do linijki piętnastej i wykonuje ostatnie polecenie, czyli wyświetlenie w linijce kropki, którą tu zastosowaliśmy dla większej przejrzystości. Jeżeli porównanie w wierszu drugim zwróci fałsz, następuje kolejne porównanie i następny przeskok. W wypadku, którym oba porównania nie zwrócą prawdy, czyli użytkownik nie poda żadnego parametru lub parametr poda błędnie, program wyświetli pomoc czyli wiersz czternasty. Bardzo często instrukcji porównania wykorzystuje się aby wybrać działanie programu w zależności od parametru.

Jeżeli rozszerzenia poleceń są włączone w instrukcji warunkowej można korzystać z bardziej złożonych poleceń decyzyjnych. Przedstawia je poniższa tabela.

EQU 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

1: @echo off
2: if %1 leq 10 goto mniejsze
3:
echo liczba wieksza niz 10
4:
goto end
5:
:mniejsze
6:
echo liczba mniejsza lub rowna 10
7:
:end
8:
echo .

W tym programie za pomocą operatora leq sprawdzany jest pierwszy argument wywołania.

Nasz program nazywa się program.bat i znajduje się na dysku c:\. Uruchamiamy go wpisując w Wierszu polecenia jego nazwę czyli program. Wszystko co znajduje się pod pierwszą linijką C:\>program  zostało wygenerowane przez nasz program wsadowy. Używamy w programach komend, które zostały opisane wcześniej w tabeli. Jeżeli coś jest nie zrozumiałe należy cofnąć się do poprzednich objaśnień. W kodzie programu numerujemy linie aby prościej było źródło omawiać. W programach wsadowych zabronione jest numerowanie kolejnych wierszy.

Zobacz również

Komentarze

Witam!
Gdy wklejeten skrypt no i zapisze to w *.bat to nie mam możliwości wpisania czego chce naprzykłąd utwórz/skasuj tylko okienko mi miga i nic nie moge zrobić (chodzi mi o okienko programu widoczne na screenie) - gdy napisze komende żeby plik sie utworzyżył on sie zrobi ale okienko także miga - wniosek - skrypty działają lecz niewiem jak ustawić w windowsie żeby nie znikały prosze o pomoc
Pozdrawiam llimakk
PS komenda pause sprawy nie załatwia bo po naciśnięciu klawisza okno znika

llimakk, 4 września 2009, 20:13
mi na viscie tylko migneło potem nic
luki, 23 stycznia 2011, 20:52
Znam się trochę na bacie jeśli ktoś chcę mogę go pouczyć. pisać na gg : 24106117 lub e-mail : czacha55@vp.pl ;) nauka za free!
Batch, 18 stycznia 2012, 23:34

Dodaj swój komentarz

Zasady publikacji komentarzyZasady publikacji komentarzy

Redakcja CentrumXP.pl nie odpowiada za treść komentarzy publikowanych na stronach Portalu
i zastrzega sobie prawo do usuwania wypowiedzi, które:

  • zawierają słowa wulgarne, obraźliwe, prowokujące i inne naruszające dobre obyczaje;
  • są jedynie próbami reklamowania stron internetowych (spamowanie poprzez umieszczanie linków);
  • przyczyniają się do złamania prawa bądź warunków licencyjnych oprogramowania (cracki, seriale, torrenty itp.);
  • zawierają dane osobowe, teleadresowe, adresy mailowe lub numery GG;
  • merytorycznie nie wnoszą nic do dyskusji lub nie mają związku z tematem komentowanego newsa, artykułu bądź pliku.

Autor:

Komentarz:

Dodaj komentarz