Witam w pierwszej części kursu powłoki Bash. Jeśli jesteś użytkownikiem Linuxa, zapewne wiesz, że system ten pozwala na sporą automatyzację procesów, które wykonywane są w środowisku OS-u.

Dzięki skryptowaniu możesz w prosty sposób zautomatyzować powtarzalne elementy swojej pracy zaoszczędzając czas na inne czynności – nie koniecznie związane z pracą.

Bash

Bash jest powłoką systemową – widzisz ją za każdym razem, gdy odpalasz konsolę/terminal, bądź przełączasz się do wiersza poleceń (CTRL+F1..F12). Zadaniem powłoki jest oczywiście wykonywanie operacji w środowisku systemowym poprzez bezpośrednie wprowadzenie z terminala lub… skrypt.

Jeśli więc wykorzystujesz do pracy powłokę Bash a twoja praca jest powtarzalna, możesz stworzyć w tym celu odpowiedni skrypt.

Początki

Aby rozpocząć zabawę ze skryptami musisz zaopatrzyć się w edytor – może to być VI, NANO, PICO, KATE, KWRITE lub dowolny inny edytor, który przyjmuje końcowy znak wiersza w formacie UNIX.

Skrypt – jak sama nazwa wskazuje – jest to mini program, który polega na przetwarzaniu komend w określonej kolejności aby osiągnąć efekt końcowy. Ponieważ Bash jest najbardziej powszechną powłoką systemową zarówno w Linuxie, systemach BSD jak i OSX, rekomenduję używanie właśnie jego do tworzenia skryptów. Mimo to powłokę możesz określić w samym skrypcie, nie musi to być Bash, więc ogólne zasady pisania skryptów są takie same dla większości aplikacji.

Tworzymy nowy plik

Naszą przygodę ze skryptami rozpoczynamy od stworzenia nowego skryptu, nazwijmy go „starter.sh”. Aby rozróżnić skrypty od innych plików w przyszłości, rekomenduję aby nadawać im rozszerzenie .sh. W środowisku pulpitu graficznego KDE nie jest to konieczne, ponieważ plik skryptu po zastosowaniu tagu interpretera automatycznie zmieni ikonę programu na ikonkę skryptu. Pamiętaj jednak, że skrypty mogą być wykonywane bezpośrednio z wiersza poleceń, co powoduje, że użytkownik nie będzie miał możliwości weryfikacji na pierwszy rzut oka, czy jest to skrypt czy nie.

Nazwijmy nasz plik np. starter.sh i otwórzmy w ulubionym edytorze.

Wybór interpretera

Interpreter skryptu to nie koniecznie Bash a sam system operacyjny nie jest w stanie dowiedzieć się, jaki program odpowiada za wykonywanie poleceń, które zawarte są w pliku skryptu. Do tego celu używamy taga, określającego ścieżkę do aplikacji, która wykonywać będzie skrypt.

Na początku skryptu wpisujemy więc, rozpoczynając od znaku hash-a oraz wykrzyknika:

#!/bin/bash

Jak widzisz, jest to komentarz – część skryptu, która nie zostanie wykonana ale informuje system o tym, jakiego programu do wykonania użyć.

Co dalej

Ponieważ nasz skrypt niczego jeszcze nie wykonuje, należy podać mu określone polecenia do wykonania, identyczne z tymi, które po kolei wprowadzałbyś/wprowadzałabyś do wiersza poleceń, aby uzyskać określony efekt. Zacznijmy od czegoś bardzo prostego – skryptu „Hello World!”

Po naszym tagu informującym system nt. używanego interpretera wciskamy klawisz ENTER i wprowadzamy następujące polecenie:

echo „Hello World”

Tak by nasz skrypt wyglądał następująco:

#!/bin/bash

echo „Hello World”

Uprawnienia wykonania

Aby wykonać skrypt, musisz nadać mu uprawnienia do wykonywania. Pamiętaj, że skrypt wykonywany jest z uprawnieniami użytkownika, który go wywołuje. Przez nieuwagę możesz więc w „zautomatyzowany” sposób, działając na koncie superużytkownika usunąć sporą część systemu. Staraj się więc unikać konta superużytkownika (ROOT) do wykonywania skryptów do momentu, gdy zrozumiesz, jakie są konsekwencje wykonywania źle napisanych skryptów.

Aby nadać uprawnienia do wykonywania skryptu, należy z terminala/konsoli wydać następujące polecenie:

chmod +x ./starter.sh

Aby uruchomić skrypt, wpisz w terminalu:

./starter.sh

Efekt powinien być następujący:

kurs bash skrypt linux skryptowanie sh programowanie

M.M.