Kolejnym krokiem w świecie Bash jest zrozumienie zmiennych. Jak sama nazwa wskazuje pozwalają one na pewne zmiany wartości w trakcie „życia” skryptu, ale nie tylko skryptu.
Zmienne systemowe w BASH
Na początek musisz wiedzieć, że sam system korzysta ze zmiennych. Pozwalają one na konfigurację ścieżek do aplikacji, nazwę użytkownika, ścieżkę do katalogu domowego. Na co dzień już korzystasz lub nastąpi to w najbliżej przyszłości i wtedy najpopularniejsze zmienne środowiskowe przydadzą się.
- aktualny katalog roboczy (zmienna PWD),
- wykorzystywany interpreter języka poleceń (zmienna SHELL),
- położenie katalogu domowego użytkownika (zmienna HOME),
- katalogi, w których poszukiwane są programy (zmienna PATH).
W celu wypisania wszystkich zmiennych środowiskowych wystarczy w konsoli wpisać polecenie env
1 |
env |
W odpowiedzi otrzymasz całą listę zmiennych środowiskowych wraz z ich wartościami.
Jeżeli chcesz pokazać wartość konkretnej zmiennej środowiskowej wystarczy użyć szablonu polecenia echo $NazwaZmiennej.
1 |
echo $HOME |
W odpowiedzi otrzymasz ścieżkę katalogu domowego.
Możesz również dodać nową zmienną środowiskową utworzoną samodzielnie. Wystarczy wykonać poniższe polecenia. Nazwy zmiennych środowiskowych pisane są z dużych liter.
1 2 |
ZMIENNA_TESTOWA=192.168.100.100 export ZMIENNA_TESTOWA |
Następnie wystarczy, że wykonasz poniższe polecenia, aby odczytać wartość nowo utworzonej zmiennej środowiskowej.
1 |
echo $ZMIENNA_TESTOWA |
Jeżeli potrzebujesz usunąć taką zmienną wystarczy użyć poniższych poleceń.
1 |
unset ZMIENNA_TESTOWA |
Po ponownym sprawdzeniu zmienna nie będzie już dostępna.
Zmienne w skryptach BASH
Zmienne w skryptach buduje się w konkretny sposób, który musi zostać dopilnowany w przeciwnym wypadku możesz narobić sobie problemów i długich godzin w szukaniu problemów. Znaczenie ma nawet spacja a raczej jej brak. Poniżej szablon utworzenia zmiennej.
1 |
nazwa_zmiennej=wartość |
np.
1 |
fruits=15 |
W ten sposób tworzysz zmienną o nazwie fruits(owoce) oraz wskazujesz, że jest ich 15. Pamiętaj, że w tym zapisie nie może pojawić się spacja, ponieważ będzie to wtedy porównanie a nie przypisanie wartości.
Spróbuj zapisać to teraz w skrypcie. Znak dolara pozwoli na odwołanie się do zmiennej a tak naprawdę bezpośrednio do jej wartości. Warto również pominąć polskie znaki takie jak: ą,ę,ś,ć etc. czasami mogą powodować problemy.
1 2 3 |
#!/bin/bash fruits=15 echo "W koszyku masz $fruits owocow" |
Po uruchomieniu skryptu potrzymasz informacje o ilości owoców, oczywiście jeżeli skrypt będzie dalej rozbudowywany i zajdzie konieczność zmiany ilości owoców zmienisz wartość tylko w jednym miejscu. Wszystkie inne wystąpienia zmiennej fruits automatycznie przy następnym uruchomieniu pobiorą nową wartość.
W tym wpisie to tyle, zapraszam na kolejny, w którym poruszę kwestię instrukcji warunkowych.
Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.
Link do formularza tutaj: https://beitadmin.pl/pomysly
Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).