System operacyjny Linux

Podobne dokumenty
Powłoka bash. Kurs systemu Unix 1

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

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

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

Bash - wprowadzenie. Bash - wprowadzenie 1/39

- wszystkie elementy - wszystkie elementy

1 Przygotował: mgr inż. Maciej Lasota

Systemy operacyjne 11

Skrypty powłoki w systemie Linux

System operacyjny Linux

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

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

Technologie Informacyjne - Linux 3

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

PODSTAWY INFORMATYKI

Wprowadzenie do programowania w powłoce

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

Powłoka (shell) Powłoka ksh

Programowanie skryptów powłoki

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

Pracownia Komputerowa wykład III

pico mojskrypt bash mojskrypt chmod +x mojskrypt./mojskrypt

Środowisko programisty Zestaw 7

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

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

Interpreter poleceń oraz zmienne środowiskowe

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ć

Programowanie w BASH u Skrypt do ćwiczeń

Tworzenie skryptu: Skrypty powłoki

Bash i algorytmy. Elwira Wachowicz. 20 lutego

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

Język C, instrukcje sterujące (laboratorium)

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

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

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

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

Systemy Operacyjne. Część II Zarządzanie/Administracja Systemem. 5: Skrypty. autor: mgr inż. Andrzej Woźniak

2.5 Podstawy programowania w bash'u

Powłoka interpreter poleceń systemu UNIX

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

Laboratorium Ubuntu Linux.

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

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

Architektura systemów informatycznych. Powłoka systemowa Architektura procesora

Wprowadzenie do Scilab: podstawy języka Scilab

Bash, skrypty. Wojciech Dudek. 15 listopada Uniwersytet Warszawski

Bash - instrukcje warunkowe, pętle i funkcje

Podstawy programowania skryptów Sh

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

Języki skryptowe w programie Plans

Przekierowanie wejścia wyjścia:

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

Administracja i programowanie pod Microsoft SQL Server 2000

Podstawy Programowania C++

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

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

1 Podstawy c++ w pigułce.

do MATLABa programowanie WYKŁAD Piotr Ciskowski

Kurs pisania skryptów w powłoce BASH

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

PRACOWNIA INFORMATYCZNA CHARAKTERYSTYKA PRZEDMIOTU BASH - PODSTAWOWE INFORMACJE

1. shell co to i co umożliwia, jakie są shell e. 2. skrypty powłoki. crone dr inż. Anna Zatwarnicka Skrypty i crone

Umieszczanie kodu. kod skryptu

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

Lekcja 1. Składnia języka zmienne i podstawowe instrukcje PHP. Do wyświetlania tekstu służy instrukcja echo echo Hello world ;

Czas już najwyższy na przykład: "Napisz program który wypisze słowo podane w parametrze, obecny czas oraz nazwę użytkownika uruchamiającego skrypt"

Instrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Pierwsze spotkanie kóªka linuksowego

1 Podstawy c++ w pigułce.

Język Python. Język Python 1/35

Podstawy programowania w Bash'u

Operatory zmiany sposobu przypisania standardowych strumieni >,<,>> Jeżeli pierwsze polecenie powiodło się to wykona drugie

Strona1. Linux. Skrypty powłoki

lekcja 8a Gry komputerowe MasterMind

#include <stdio.h> void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Środowisko programisty

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

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

Linuks skrypty Część teoretyczna

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

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

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

Trochę o plikach wsadowych (Windows)

Pliki. Operacje na plikach w Pascalu

Pakiety Matematyczne - R Zestaw 2.

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

Programowanie strukturalne i obiektowe

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Podstawy bioinformatyki 2017/18

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Powłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.

Metody numeryczne Laboratorium 2

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

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Transkrypt:

Paweł Rajba pawel.rajba@continet.pl http://kursy24.eu/

Zawartość modułu 6 Język bash Pierwszy skrypt Rozwinięcia parametryczne Bloki instrukcji Dwa przydatne polecenia Tablice Sprawdzanie warunków Instrukcje sterujące Funkcje - 1 -

Pierwszy skrypt Tworzymy plik z rozszerzeniem.sh i nadajemy mu prawa do wykonywania. W pierwszym wierszu wpisujemy #!/bin/bash Do skryptu możemy przekazać parametry wywołania: $0 nazwa skryptu, $1, $2, $3,..., $9 kolejne parametry, shift przesuwa parametry o jeden w lewo $# liczba parametrów, $* wszystkie parametry w postaci listy. - 2 -

Przykład #!/bin/bash s=0; for i in $* do s=$[$s+$i]; done echo $s; - 3 -

Rozwinięcia parametryczne Składnia ${parametr:-domyslna} jeśli parametr jest pusty, to przyjmie wartość domyślną, ${#parametr} długość parametru, ${parametr%%slowo} parametr, od którego odcięto z tyłu najdłuższy fragment pasujący do słowa, ${parametr%slowo} parametr, od którego odcięto z tyłu najkrótszy fragment pasujący do słowa, - 4 -

Rozwinięcia parametryczne Składnia c.d. ${parametr##slowo} parametr, od którego odcieto z przodu najdłuższy fragment pasujący do słowa, ${parametr#slowo} parametr, od którego odcięto z przodu najkrótszy fragment pasujący do słowa. Przykłady x="a.b.c.d.e" echo ${#x} ${x%%.*} ${x%.*} ${x##*.} ${x#*.} - 5 -

Rozwinięcia parametryczne Składnia c.d. ${parametr##slowo} parametr, od którego odcieto z przodu najdłuższy fragment pasujący do słowa, ${parametr#slowo} parametr, od którego odcięto z przodu najkrótszy fragment pasujący do słowa. Przykłady x="a.b.c.d.e" echo ${#x} ${x%%.*} ${x%.*} ${x##*.} ${x#*.} Przykłady c.d. 9 a a.b.c.d e b.c.d.e - 6 -

Bloki instrukcji Składnia (lista) uruchamia listę instrukcji w nowej powłoce, { lista; } uruchamia listę instrukcji w bieżącej powłoce, ((wyrażenie)) wyrażenie jest obliczane zgodnie z zasadami wyrażeń arytmetycznych. - 7 -

Dwa przydatne polecenia read czyta napis z klawiatury Składnia read [opcje] [zmienna] Opcje -d separator kończy wczytywanie po pojawieniu się znaku separator (niekoniecznie znaku nowej linii), -n liczba kończy wczytywanie po liczba znaków, -p prompt ustawia znak zachęty na prompt, -t timeout określa, po jakim czasie wczytywanie zostanie przerwane z błędem. Jeśli nie podamy zmiennej, wczytany napis zostanie przekazany do zmiennej REPLY - 8 -

Dwa przydatne polecenia printf formatowanie napisów Składnia printf format [argumenty] Opcje formatu %d, %i liczby całkowite, %x liczby całkowite w postaci szesnastkowej, %f, %F liczby zmiennoprzecinkowe, %e, %E liczby zmiennoprzecinkowe w postaci wykładniczej, %s napis, %c pojedynczy znak. - 9 -

Tablice Przykład roadrunner :~ # x[10]=5 roadrunner :~ # echo ${x[10]} 5 roadrunner :~ # x[ dwa ]=2 roadrunner:~ # echo ${x[ dwa ]} 2-10 -

Sprawdzanie warunków test polecenia do sprawdzania warunków Składnia test wyrazenie [ wyrazenie ] Operatory liczbowe e1 -eq e2 prawdziwe wtw., gdy e1 = e2, e1 -ge e2 prawdziwe wtw., gdy e1 >= e2, e1 -gt e2 prawdziwe wtw., gdy e1 > e2, e1 -lt e2 prawdziwe wtw., gdy e1 < e2, e1 -le e2 prawdziwe wtw., gdy e1 <= e2, e1 -ne e2 prawdziwe wtw., gdy e1 <> e2. - 11 -

Sprawdzanie warunków test c.d. Operatory plikowe -d plik prawdziwe wtw., gdy plik istnieje i jest katalogiem, -e plik prawdziwe wtw., gdy plik istnieje, -f plik prawdziwe wtw., gdy plik istnieje i jest regularny, -r plik prawdziwe wtw., gdy plik istnieje i jest z prawem do czytania, -w plik prawdziwe wtw., gdy plik istnieje i jest z prawem do pisania, -x plik prawdziwe wtw., gdy plik istnieje i jest z prawem do wykonywania. - 12 -

Sprawdzanie warunków test c.d. Operatory tekstowe s1 = s2 prawdziwe wtw., gdy teksty s1 i s2 są równe, s1!= s2 prawdziwe wtw., gdy teksty s1 i s2 są rózne, [-n] s prawdziwe wtw., gdy długość s jest wiekszą niż 0, -z s prawdziwe wtw., gdy długość s jest równa 0. Operatory logiczne!w operator NOT (zaprzeczenie), w1 -a w2 operator AND, w1 -o w2 operator OR. - 13 -

Instrukcje sterujące if instrukcja warunkowa Składnia if warunek; then lista; [ elif warunek; then lista; ]... [ else lista; ] fi Przykład if [ -f "$plik" ] then echo "Jest pliczek" $plik else echo "Nie ma, " $plik "chlip" fi if [ "$haslo" == "tajne" ]; then echo Hi"; fi - 14 -

Instrukcje sterujące case instrukcja wyboru Składnia case $zmienna in [ wzorzec [ wzorzec ]... ) lista ;; ]... esac - 15 -

Instrukcje sterujące case c.d. Przykład case "$dzien" in 6 "sat") echo "Jest sobota."; ;; 0 "sun") echo "Jest niedziela."; ;; *) echo "To nie jest dobry dzien."; ;; esac - 16 -

Instrukcje sterujące while pętla Składnia while warunek; do list; done Przykład i=0 while [ $i -le 10 ] do echo $i i=$[$i+1] done - 17 -

Instrukcje sterujące for pętla Składnia for nazwa [ in lista ] ; do lista ; done for (( wyr1 ; wyr2 ; wyr3 )) ; do lista ; done Przykłady for i in.*; do echo $i; done for ((i=0;$i<10;i++)) do echo $[$i%3] done - 18 -

Instrukcje sterujące break i continue instrukcje Składnia break [n] continue [n] Opcje n określa poziom wyjścia - 19 -

Funkcje Kilka uwag funkcje można wywoływać z parametrami np. f 1 2 3 4, dostęp do parametrów wewnątrz funkcji jest taki, jak w przypadku skryptów, czyli poprzez $1,..., $9, instrukcja return przekazujemy wartość funkcji, możemy stosować rekurencje. - 20 -

Funkcje Składnia [function] nazwa() { polecenia; } Przykład #!/bin/bash function silnia_aux() { if [ "$1" -eq "1" ] then echo "$2"; else silnia_aux $[$1-1] $[$2 * $1]; fi } - 21 -

Przykłady tabliczka.sh pytaj.sh sortuj.sh - 22 -