Skrypt programistyczny z bashem na linux

Spisie treści

Chociaż generalnie używamy go do operacji administracyjnych lub zarządzania plikami, konsola Linux rozszerza swoją funkcjonalność znacznie poza ten cel, pozwalając nam na programowanie skryptów zgodnie z naszymi potrzebami.
Zasadniczo mówimy, że jest to plik zawierający kod napisany w określonym języku programowania, którego system używa do określonego zadania. Nie musi mieć zewnętrznego wejścia ani interfejsu graficznego, ale musi wyprowadzać przetworzone dane.
Na początek musimy mieć edytor tekstu i chęć do programowania. Pliki, które zapisujemy z rozszerzeniem .sh mogą być uruchamiane (lub interpretowane) przez konsolę, o ile pierwsza linia wygląda następująco:
#! / kosz / bash
To mówi systemowi, że ma użyć konsoli do uruchomienia pliku. Dodatkowo znak # umożliwia pisanie komentarzy.
Wypróbujemy kilka przykładów
Tworzymy plik o nazwie downloads.sh
 #! / bin / bash # stwórzmy alias o nazwie downloads z adresem katalogu Downloads alias downloads = '/ home / user / Downloads'

Zapisz go jako downloads.sh
Aby uruchomić skrypt Bash, nadaj mu uprawnienia do wykonywania. Aby to zrobić, wpisz w terminalu poleceń:
chmod u + x downloads.sh
Pamiętaj, aby uruchamiać to polecenie dla każdego tworzonego skryptu
Uruchom „skrypt”, uruchamiając w terminalu
./downloads.sh
Jeśli to zadziałało, powinieneś być umieszczony w katalogu Pobrane
Użyj zmiennych i parametrów w skrypcie
 #! / bin / bash # Używanie zmiennych # echo "Twój pierwszy argument to" $ 1 echo "Twój drugi argument to" $ 2

Sposobem na uruchomienie skryptu będzie na przykład
./miScript.sh cześć 4

Wynik powinien być
Twój pierwszy argument to cześć
Twój drugi argument to 4
Jak umożliwić wprowadzanie zmiennych i parametrów podczas wykonywania?
 #! / bin / bash echo "Wpisz swoje imię i naciśnij ENTER" #Odczytaj nazwę zmiennej przeczytaj nazwę echo "Twoje imię to $"

Bardziej przydatny przykład skryptu, który powie nam, jakie procesy wykonuje dany użytkownik
 #! / bin / bash RES = s #odpowiedź na pętlę kontynuuj jeśli while [$ RES = s] wykonaj echo "Wprowadź nazwę użytkownika:" read USU #nazwa użytkownika ps aux | grep $ USU echo "Czy chcesz kontynuować?" przeczytaj OZE gotowe

Jeśli chcemy uniemożliwić jakiemukolwiek użytkownikowi wykonanie skryptu na początku możemy umieścić następujący kod tak aby mógł być wykonany tylko przez użytkownika root
 #! / bin / bash if [[$ EUID -ne 0]]; then echo "Ten skrypt musi zostać wykonany przez użytkownika root" 1> & 2 exit 1 fi 
Jeśli jakikolwiek inny użytkownik spróbuje uruchomić skrypt, nie zadziała, a okno terminala zostanie zamknięte.
Możemy również pozwolić niektórym użytkownikom na uruchomienie go za nich na początku umieścimy następujący kod
 #!/bin/bash AUTHORIZED_USER = "dozwolony użytkownik" if [$USER! = $AUTHORIZED_USER]; then echo "Ten skrypt musi zostać wykonany przez użytkownika $ AUTHORIZED_USER" 1> & 2 exit 1 fi

Stworzymy menu bash, aby dać użytkownikowi różne opcje lub ułatwić interakcję
 #! / bin / bash clear while: do echo "Wybierz opcję" echo "1. Zalogowani użytkownicy?" echo "2. Zużycie zasobów" echo "3. Czy usługi są uruchomione?" echo "4. Wyjście" echo -n "Wybierz opcję [1 - 4]" read opcja case $ opcja w 1) echo "Są połączone:"; dziewczyna;; 2) echo „Uruchomiony htop”; htop;; 3) lsof -n -i -P | grep '*;; 4) echo „Koniec”; wyjście 1;; *) echo "$ opc jest nieprawidłową opcją?"; echo "Naciśnij klawisz, aby kontynuować…"; przeczytaj foo ;; zrobione
Podobał Ci się i pomógł ten samouczek?Możesz nagrodzić autora, naciskając ten przycisk, aby dać mu pozytywny punkt
wave wave wave wave wave