Jednym z języków programowania, które można używać w systemie Linux, jest bash. Jest to język skryptowy, który pozwala na automatyzację różnych czynności w systemie, takich jak wykonywanie poleceń, tworzenie prostych aplikacji i wiele innych. Dzięki bashowi można znacznie zwiększyć wydajność i efektywność pracy z systemem Linux.
Nazwa bash pochodzi od nazwiska twórcy tego języka, Briana Foxa. Skrót bash oznacza Bourne-Again SHell, czyli “ponownie zbudowana powłoka Bourne’a”. Jest to nawiązanie do powłoki Bourne’a, czyli jednego z pierwszych i najważniejszych języków skryptowych w systemie Unix. Bash został stworzony jako rozszerzenie i ulepszenie powłoki Bourne’a, dlatego nosi taką nazwę.
W jednym z poprzednich artykułów pisałem o przydatnych skrótach klawiszowych, które pomogą i przyśpieszą wam pracę w powłoce bash. Również przydatna wiedza. Tym razem jednak porozmawiamy o skryptach.
Pierwszy skrypt w bashu
Podstawy języka skryptowego bash
Jeśli jesteś nowicjuszem w programowaniu w bashu, to ten artykuł jest dla Ciebie. Przedstawię tutaj podstawy języka skryptowego bash.
#!/bin/bash
# Skrypt tworzy katalog o podanej nazwie
# jeśli taki katalog już istnieje, to wyświetl komunikat
echo "Podaj nazwę katalogu:"
read directoryName
if [ -d "$directoryName" ]; then
echo "Katalog o nazwie $directoryName już istnieje"
else
mkdir "$directoryName"
echo "Katalog o nazwie $directoryName został utworzony"
fi
Jak możesz zauważyć, ten skrypt pozwala użytkownikowi na utworzenie katalogu o podanej nazwie. Jeśli katalog w naszym systemie o takiej nazwie już istnieje, to wyświetli nam komunikat informujący o tym fakcie.
rozpisujemy skrypt na części
Dwa znaki #! rozpoczynają skrypt i nazywamy je “shebang”. Shebang informuje system Linux, jakiego interpretera ma użyć do uruchomienia skryptu. W naszym przykładzie interpreter to /bin/bash
.
Komentarz zawierający krótki opis skryptu rozpoczyna się od znaku #. Komentarze są ważne, ponieważ pozwalają innym programistom i użytkownikom zrozumieć, co dany skrypt robi.
Polecenie echo wyświetla na ekranie tekst znajdujący się w cudzysłowie. W naszym przykładzie wyświetli nam na ekranie komunikat “Podaj nazwę katalogu:”.
Polecenie read pozwala użytkownikowi na odczytanie wartości i zapisanie jej do zmiennej. Ten przykład pokazuje nam, że wartość którą wprowadzi użytkownik jest zapisywana do zmiennej directoryName.
Instrukcja warunkowa if
sprawdza, czy istnieje katalog o nazwie podanej przez użytkownika (czyli zawartej w zmiennej directoryName). Jeśli tak, to wyświetlany jest komunikat “Katalog o nazwie $directoryName już istnieje
“, a jeśli nie, to tworzony jest nowy katalog o podanej nazwie i wyświetlany jest komunikat “Katalog o nazwie $directoryName został utworzony
“.
podsumowanie
To w skrócie wyjaśnia, jak działa nasz prosty skrypt w języku bash. Oczywiście istnieją różne inne elementy języka, takie jak pętle, instrukcje warunkowe, funkcje itp., ale ten przykład powinien pokazać, jak działają podstawowe elementy skryptu w języku bash.
Jeśli chcesz się dowiedzieć więcej o programowaniu w bashu i jak stworzyć bardziej zaawansowane skrypty, to polecam zapoznać się z dokumentacją języka oraz przykładami skryptów dostępnymi w sieci. Z czasem i praktyką będziesz w stanie stworzyć coraz bardziej zaawansowane i przydatne skrypty w języku bash.
Pamiętaj, że aby uruchomić skrypt w bashu, musisz najpierw nadać mu odpowiednie uprawnienia do wykonania. Możesz to zrobić za pomocą polecenia chmod
w następujący sposób:
chmod +x nazwa_skryptu.sh
Po nadaniu uprawnień możesz uruchomić skrypt za pomocą polecenia ./nazwa_skryptu.sh
.
gratis
Na koniec pokaże wam mój pierwszy skrypt który napisałem dla siebie. Jest bardzo prosty i pozwala nam wybrać z listy jeden z procesów.
#!/bin/bash
echo "Wybierz komendę z listy:"
echo "1) update"
echo "2) upgrade"
echo "3) autoremove"
echo "4) reboot"
read -p "Wybieram opcję: " option
if [[ $option -eq 1 ]]; then
sudo apt-get update
elif [[ $option -eq 2 ]]; then
sudo apt-get upgrade
elif [[ $option -eq 3 ]]; then
sudo apt-get autoremove
elif [[ $option -eq 4 ]]; then
sudo reboot
else echo "Nieprawidłowy wybór."
fi
Mam nadzieję, że ten artykuł pomógł Ci rozpocząć przygodę z programowaniem w języku bash i zachęcił Cię do dalszego zgłębiania tego ciekawego języka. Powodzenia!