Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:

Podobne dokumenty
Systemy operacyjne 11

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

12. Skrypty w Linux - funkcje, instrukcje sterujące i obliczenia arytmetyczne

System operacyjny Linux

Systemy operacyjne. Programowanie w shellu: BASH. Wydział Inżynierii Metali i Informatyki Przemysłowej

Programowanie w BASH u Skrypt do ćwiczeń

Technologie Informacyjne - Linux 3

Skrypty powłoki w systemie Linux

Pracownia Komputerowa wykład III

Ćwiczenie nr 14: System Linux

Temat zajęć: Tworzenie skryptów powłoki systemu operacyjnego.

1 Przygotował: mgr inż. Maciej Lasota

Wstęp do informatyki. stęp do informatyki Polecenia (cz.2)

Skrypty BASH a. Systemy Operacyjne 2. Mateusz Hołenko. 4 października 2012

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Powłoka (shell) Powłoka ksh

Programowanie skryptów powłoki

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Wprowadzenie do programowania w powłoce

1 Podstawy c++ w pigułce.

Środowisko programisty Zestaw 7

skrypt powłoki to plik tekstowy, rozpoczynający się sekwencją: pierwsza linia określa powłokę, w której wykonywany jest skrypt; druga to komentarz

Interpreter poleceń oraz zmienne środowiskowe

K. Konopko; Skrypty powłoki. Skrypty powłoki. dr inż. Krzysztof Konopko

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Bash - wprowadzenie. Bash - wprowadzenie 1/39

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

Wstęp do Informatyki dla bioinformatyków

Instrukcja SO powłoka BASH i skrypty powłoki Istotne jest zrozumienie działania narzędzia history powłoki BASH. Każde polecenie wprowadzone i

Laboratorium Ubuntu Linux.

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

PODSTAWY INFORMATYKI

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

Umieszczanie kodu. kod skryptu

Pętla for. Wynik działania programu:

Pracownia Komputerowa wykład III

Programowanie w języku Python. Grażyna Koba

1 Podstawy c++ w pigułce.

Ćwiczenie 1. Wprowadzenie do programu Octave

Powłoka bash. Kurs systemu Unix 1

Sieci i systemy operacyjne I Ćwiczenie 1. Podstawowe polecenia systemu Unix

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

W pierwszej kolumnie wyświetlany jest identyfikator procesu (pid)

Trochę o plikach wsadowych (Windows)

Wprowadzenie do Scilab: podstawy języka Scilab

Wstęp do systemu Linux

System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix

- wszystkie elementy - wszystkie elementy

Strona1. Linux. Skrypty powłoki

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem

Metody numeryczne Laboratorium 2

SYSTEMY OPERACYJNE ĆWICZENIE POLECENIA SYSTEMU MSDOS

Podstawy Programowania C++

Kompilator języka Basic można bezpłatnie pobrać ze strony z zakładki DOWNLOAD.

Podstawy Programowania Podstawowa składnia języka C++

Pracownia Komputerowa wyk ad III

Ćwiczenie: JavaScript Cookies (3x45 minut)

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

JAVAScript w dokumentach HTML - przypomnienie

Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki

pico mojskrypt bash mojskrypt chmod +x mojskrypt./mojskrypt

SSK - Techniki Internetowe

Podstawy informatyki

Technologie informacyjne lab. 4

Ćwiczenie 1. Wprowadzenie do programu Octave

#Tu jest komentarz. fi case. until while { } time [ ] for do. function done. if elif. in else. select esac. then

Każde wykonanie bloku instrukcji nazywamy pojedynczym przebiegiem lub iteracją pętli.

Programowanie w Turbo Pascal

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Instrukcje cykliczne (pętle) WHILE...END WHILE

Python jest interpreterem poleceń. Mamy dwie możliwości wydawania owych poleceń:

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

Powłoka interpreter poleceń systemu UNIX

JAVA?? to proste!! Autor: wojtekb111111

Cw.12 JAVAScript w dokumentach HTML

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

PRACOWNIA INFORMATYCZNA CHARAKTERYSTYKA PRZEDMIOTU BASH - PODSTAWOWE INFORMACJE

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe

Serwer WWW Apache. Plik konfiguracyjny httpd.conf Definiujemy m.in.: Aktualne wersje 2.4.6, , zakończony projekt

Jednorazowe zaplanowanie zadania program at.

Wyrażenia regularne. Wyrażenia regularne 1/41

Przykład 1 -->s="hello World!" s = Hello World! -->disp(s) Hello World!

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Projektowanie aplikacji internetowych Pisanie skryptów wiersza poleceń - pętle

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby

Zasady programowania Dokumentacja

LibreOffice Calc VBA

Bloki anonimowe w PL/SQL

PODSTAWY INFORMATYKI

Zmienne środowiskowe: Ścieżka przeszukiwana komendą.

Podstawy programowania w Bash'u

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

Pascal - wprowadzenie

Transkrypt:

Skrypty powłoki Skrypty są zwykłymi plikami tekstowymi, w których są zapisane polecenia zrozumiałe dla powłoki. Zadaniem powłoki jest przetłumaczenie ich na polecenia systemu. Aby przygotować skrypt, należy: - stworzyć plik, w którym trzeba umieścić kod, np.: touch naszskrypt.bat - za pomocą wolnego edytora tekstu wpisać pliku kolejno wykonywane polecenia, - nadać uprawnienia wykonywania pliku dla uprawnionych użytkowników, - uruchomić skrypt./naszskrypt.bat, gdzie symbol./ oznacza, że skrypt znajduje się w bieżącym katalogu. Przykławy, bardzo prosty skrypt może się składać z następujących poleceń: #Tu jest komentarz. echo "Hello World" Pierwsza linia skryptu zaczynająca się od znaków: #! ma szczególne znaczenie - wskazuje na rodzaj powłoki, w której skrypt ma być wykonany. Tutaj skrypt zawsze będzie wykonywany przez interpreter poleceń /bin/bash, niezależnie od tego, jakiego rodzaju powłoki używamy w danej chwili. Znak # (hasz) oznacza komentarz - wszystko, co znajduje się za nim w tej samej linii, jest pomijane przez interpreter. echo "Hello World" Trzecia linia spowoduje wydrukowanie na standarwym wyjściu (stut), czyli na ekranie, napisu: Hello World". W języku powłoki występują pewne słowa zastrzeżone, np.:! function select while time case elif fi if then { [ Do else for in until } ] Najczęściej używane polecenia w skryptach: echo służy wydrukowania napisu na standarwym wyjściu. Można też przekierować strumień danych pliku; read czyta ze standarwego wejścia pojedynczy wiersz; zmienne programowe (program variables) zmienne definiowane samodzielnie przez użytkownika, np. zmienna= wartość" (nie może być spacji przed i po = ). Do zmiennej można odwołać się przez podanie jej nazwy poprzedzonej znakiem $, np. dla zmiennej x może to wyglądać następująco: echo $x; zmienne specjalne (special variables, special parameters) to najbardziej prywatne zmienne powłoki, są ustępniane użytkownikowi tylko odczytu (istnieją jednak wyjątki). Kilka przykładów zmiennych specjalnych:

$0 nazwa bieżącego skryptu lub powłoki, $1..$9 parametry przekazywane skryptu (wyjątek użytkownik może modyfikować ten rodzaj zmiennych specjalnych), $? kod powrotu ostatnio wykonywanego polecenia, $$ PID procesu bieżącej powłoki; zmienne śrowiskowe (environment variables) definiują śrowisko użytkownika, stępne dla wszystkich procesów potomnych, np.: $HOME ścieżka katalogu mowego użytkownika, $USER login użytkownika, $HOSTNAME nazwa hosta użytkownika, $OSTYPE rodzaj systemu operacyjnego; instrukcja warunkowa if sprawdza, czy warunek jest prawdziwy; jeśli tak, to wykonane zostanie lub polecenia znajdujące się po słowie kluczowym then. Instrukcja kończy się słowem fi. Składnia polecenia jest następująca: if warunek then else fi l 2 test służy sprawdzania warunków. Składnia polecenia: test wyrażenie1 operator wyrażenie2 może tez być zapisane w nawiasach kwadratowych: [ wyrażeniel operator wyrażenie2 ] Miedzy nawiasami a treścią warunku muszą być spacje, tak jak powyżej. Polecenie test zwraca wartość 0 (true), jeśli warunek jest spełniony i wartość 1 (false) jeśli warunek nie jest spełniony, np. test -e plik Wybrane przykłady operatorów polecenia test: -e plik istnieje, = sprawdza, czy wyrażenia są równe,!= sprawdza, czy wyrażenia są różne, -d wyrażenie istnieje i jest katalogiem, -r można czytać plik, -w można zapisywać pliku, -x można plik wykonać, -it -gt mniejsze niż, większe niż,

-ge -le większe lub równe, mniejsze lub równe; instrukcja case pozwala na konanie wyboru spośród kilku wzorców. Sprawdzana jest wartość zmiennej po słowie kluczowym case i porównywana ze wszystkimi wariantami po kolei. Jeśli pasowanie zakończy się sukcesem, wykonane zostanie lub polecenia przypisane danego wzorca. W przeciwnym wypadku zostanie użyte myślne oznaczone gwiazdką,,*. Składnia polecenia: case zmienna in "wzorzecl") 1 ;; "wzorzec2") 2 ;; "wzorzec3") 3 ;; *) _myślne Przykład echo "Podaj cyfrę dnia tygodnia" read d case "$d" in "1") echo "Poniedziałek" ;; "2") echo "Wtorek" ;; "3") echo "Środa" ;; "4") echo "Czwartek" ;; "5") echo "Piątek" ;; "6") echo "Sobota" ;; "7") echo "Niedziela" ;; *) echo "Nic nie wybrałeś" pętla for wykonuje polecenia zawarte wewnątrz pętli, na każdym składniku listy. Składnia polecenia: for zmienna in lista Przykład for x in jeden dwa trzy echo "To jest $x"

Pętla for jest bardzo przydatna w sytuacjach, gdy użytkownik chce wykonać jakaś operację na wszystkich plikach w danym katalogu. Na przykład, gdy trzeba uzyskać listę wszystkich plików o danym rozszerzeniu znajdujących się w pewnym katalogu, należy wpisać: for x in *html echo "To jest plik $x" pętla select - wygeneruje z listy słów po in proste ponumerowane menu, każdej pozycji odpowiada kolejna liczba od 1 wzwyż. Poniżej menu znajduje się znak zachęty, gdzie wpisuje się cyfrę odpowiadającą wybranej przez użytkownika pozycji w menu. Jeśli nic się nie wpisze i zostanie wciśnięty [ENTER], menu będzie wyświetlone ponownie. To, co zostało wpisane, jest zachowywane w zmiennej REPLY. Gdy odczytane zostaje EOF (End Of File), czyli znak końca pliku [Ctrl]+[D], to select kończy pracę. Pętla działa momentu, gdy nie zostanie wykonane break lub return. Składnia polecenia: select zmienna in lista Od razu nasuwa się możliwość zastosowania wewnątrz niej instrukcji case: echo "Co wybierasz?" select y in X Y Z Quit case $y in break "X") echo "Wybrałeś X" ;; "Y") echo "Wybrałeś Y" ;; "Z") echo "Wybrałeś Z" ;; "Quit") exit ;; *) echo "Nic nie wybrałeś" pętla while - najpierw sprawdza warunek, czy jest prawdziwy; jeśli tak, to wykonane zostanie lub lista poleceń zawartych wewnątrz pętli, gdy warunek jest fałszywy, pętla zostanie zakończona. Składnia polecenia: while warunek

Przykład: x=1; while [ $x -le 10 ] echo "Napis pojawił się po raz: $x" x=$[x + 1] pętla until sprawdza, czy warunek jest prawdziwy; gdy jest fałszywy, wykonywane jest lub lista poleceń zawartych wewnątrz pętli, między słowami kluczowymi a. Pętla until kończy swoje działanie w momencie, gdy warunek stanie się prawdziwy. Składnia polecenia: until warunek Przykład: x=1; until [ $x -ge 10 ] echo "Napis pojawił się po raz: $x" x=$[x + 1] Ćwiczenie Posługiwanie się skryptami powłoki zadań administracyjnych Aby przygotować skrypt tworzący konto użytkownika w systemie i przypisać mu odpowiednie uprawnienia, należy: 1. Zalogować się na konto użytkownika root. 2. W wolnym edytorze tekstu utworzyć plik skrypt.bat i napisać kod skryptu, np. useradd uczen1 # tworze katalog dla stron www mkdir /home/uczen1/public_html # ustawiam uprawnienia dla katalogu użytkownika chmod 711 /home/uczen1 # zmieniam właściciela katalogu public_html chown uczen1:uczen1 /home/uczen1 /public_html # ustawiam hasło użytkownika (123) echo "123" passwd --stdin uczen1 3. Nadać prawo wykonania skryptu m chmod 700 skrypt.bat 4. Przetestować skrypt poprzez jego uruchomienie m./skrypt.bat 5. Zalogować się systemu jako użytkownika uczen1 z hasłem 123.