Case, powrót do menu

Potrzebujesz pomocy z C, C++, perl, python, itp.
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Case, powrót do menu

Post autor: kodama »

Cześć
Mam sobie takie menu w case. Pod jednym wyborem najpierw jest dokonywany test czy katalog istnieje:

Kod: Zaznacz cały

		if [ ! -d "$karta" ]; then

 		echo "Brak katalogu";
 	 *co tutaj wstawić?*
			
		else
...
Moje pytanie - co wstawić w skrypcie tam gdzie gwiazdki, żeby jeżeli ten test zwróci prawdę powróciło do głównego menu wyboru? Pewnie to jakaś pierdołka jak znam życie :)
Z góry dzięki.
Awatar użytkownika
pone13
Beginner
Posty: 337
Rejestracja: 30 listopada 2007, 20:59
Lokalizacja: Leszno

Post autor: pone13 »

case wsadź w pętle (np. while), wstaw w tym miejscu break.

W miejscach wymagających przerwania case jak i pętli ustaw ziemną warunkową przerywającą tą pętle.

Szkic w C:

Kod: Zaznacz cały

while (cond) {
    menu(); /** show menu and wait for user input */
    cond = 1;

    switch (item) {
    case itemA:
         cond = 0; /** exit from menu */
         break;
    case itemB:
         break; /** show menu again */
    }
}
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

Zrobiłem tak:

Kod: Zaznacz cały

while true do
...
...
...
done
Całego case wrzuciłem w taką pętlę i śmiga tak jak potrzebuję. Dzięki bardzo.
Awatar użytkownika
f1.micro
Beginner
Posty: 119
Rejestracja: 24 lutego 2009, 11:32
Lokalizacja: Kraków

Post autor: f1.micro »

Kod: Zaznacz cały

a=0


while [ $a -lt 1 ]; do


	read wybor
        case $wybor in 
              "wyjdz") a=1;;


done
To tak żeby można było wyjść z pętli
ODPOWIEDZ