Bash - wymuszenie podania danych.

Odpowiedz Nowy wątek
2019-06-10 13:42
0

Witam,

sprawa dotyczy prostego skryptu w którym podajemy swoje imię oraz wiek. Problem polega na tym, aby w przypadku braku jednej z informacji skrypt wyświetlił informacje o jej braku. Np. Podaj imię: Klikam enter i system wyrzuca informacje o błędzie.

Pozostało 580 znaków

2019-06-10 14:06
0
  1. Czy komunikat ma być wypisywany na standardowe wyjście?
  2. Czy skrypt ma się kończyć po wypisaniu komunikatu?
  3. Masz już coś z tego skryptu?

Pozostało 580 znaków

2019-06-10 14:49
1

1) read -p "Prompt" ZMIENNA - wyświetla komunikat zachęcający do wprowadzenia tekstu i zapisuje wynik na ZMIENNA
2) [[ -z $ZMIENNA ]] - testuje czy zmienna jest pusta / niezdefiniowana
3) [[ warunek1 -o warunek2 ]] - testuje czy zachodzi jeden z warunków

Tyle Ci powinno wystarczyć do napisania tego skryptu.

Pozostało 580 znaków

2019-06-10 18:12
1
#!/bin/bash
read -p "Podaj imię: " imie
while [[ $imie = "" ]]; do
echo "Wprowadziłeś niepoprawne imię !"
read -p "Podaj imię: " imie
done
echo "OK, imię poprawne"

Każdy programista przybywający z innego miasta jest fachowcem.

Pozostało 580 znaków

2019-06-10 18:25
0
Silv napisał(a):
  1. Czy komunikat ma być wypisywany na standardowe wyjście?
  2. Czy skrypt ma się kończyć po wypisaniu komunikatu?
  3. Masz już coś z tego skryptu?

Dzięki za odpowiedź. Skrypt wygląda następująco, ale jest błąd.
Tak, skrypt ma się kończyć po wypisaniu komunikatu.

Pozostało 580 znaków

2019-06-10 18:54
0
gk1982 napisał(a):
#!/bin/bash
read -p "Podaj imię: " imie
while [[ $imie = "" ]]; do
echo "Wprowadziłeś niepoprawne imię !"
read -p "Podaj imię: " imie
done
echo "OK, imię poprawne"

Wielki dzięki,

wszystko działa.

Możesz zaakceptować odpowiedź @gk1982. - Silv 2019-06-10 21:21

Pozostało 580 znaków

2019-06-10 22:57
0

wszystko działa.

Nie obsługujesz EOF.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0