czwartek,
Bash: Polecenie read
Polecenie read
w powłoce bash jest używane do odczytywania linii wejścia ze standardowego wejścia (stdin) lub z pliku. Pozwala na przypisanie odczytanych danych do zmiennych. Jest to szczególnie przydatne w skryptach, gdzie chcesz zebrać dane wejściowe od użytkownika lub przetworzyć dane pochodzące z pliku linia po linii. Polecenie read
stanowi niezwykle elastyczne narzędzie i znajduje wiele zastosowań.
Podstawowa składnia polecenia read
read [opcje] [zmienne...]
Gdzie:
[opcje]
to różne opcje modyfikujące zachowanie poleceniaread
, na przykład-p
umożliwia wyświetlenie monitu przed odczytaniem danych, a-s
sprawia, że wprowadzane dane są niewidoczne na ekranie (użyteczne przy wprowadzaniu haseł).[zmienne...]
to lista zmiennych, do których będą przypisywane kolejne słowa odczytane z wejścia. Jeśli podasz więcej zmiennych, niż jest słów w linii, nadmiarowe zmienne będą miały wartość pustą. Jeśli słów będzie więcej niż zmiennych, cała reszta linii zostanie przypisana do ostatniej zmiennej.
Przykłady użycia
Proste odczytywanie danych
echo "Podaj swoje imię:"
read imie
echo "Witaj, $imie!"
Ten skrypt prosi użytkownika o wpisanie swojego imienia, a następnie wita go, używając wprowadzonej wartości.
Odczytywanie danych z monitem
read -p "Podaj swoje imię: " imie
echo "Witaj, $imie!"
Tutaj -p
pozwala na bezpośrednie wyświetlenie monitu przed odczytaniem danych.
Odczytywanie hasła bez wyświetlania go na ekranie
read -s -p "Podaj swoje hasło: " haslo
echo "Hasło zostało zapisane."
Opcja -s
sprawia, że wpisywane hasło nie jest wyświetlane, co zwiększa bezpieczeństwo.
Odczytywanie wielu danych jednocześnie
read -p "Podaj imię i nazwisko: " imie nazwisko
echo "Witaj, $imie $nazwisko!"
Pozwala to na odczytanie imienia i nazwiska (lub dowolnej liczby słów) w jednej linii i przypisanie ich do odpowiednich zmiennych.