Powłoka bash. Kurs systemu Unix 1

Podobne dokumenty
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

System operacyjny Linux

Bash - wprowadzenie. Bash - wprowadzenie 1/39

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

Powłoka (shell) Powłoka ksh

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

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

Pracownia Komputerowa wykład III

Przekierowanie wejścia wyjścia:

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

Skrypty powłoki w systemie Linux

Środowisko programisty Zestaw 7

1 Przygotował: mgr inż. Maciej Lasota

Interpreter poleceń oraz zmienne środowiskowe

Powłoka interpreter poleceń systemu UNIX

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

Technologie Informacyjne - Linux 3

PODSTAWY INFORMATYKI

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

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

- wszystkie elementy - wszystkie elementy

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

Pracownia Komputerowa wykład III

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

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

Wstęp do Informatyki dla bioinformatyków

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

Systemy operacyjne Programowanie w języku powłoki sh

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

pozwalają na umieszczenie wielu komend w jednym pliku (z atrybutem wykonywania) - udostępnia środowisko do konfigurowania systemu i programowania

Programowanie skryptów powłoki

Bash i algorytmy. Elwira Wachowicz. 20 lutego

pico mojskrypt bash mojskrypt chmod +x mojskrypt./mojskrypt

Systemy operacyjne / Programowanie w języku powłoki sh str.1/19

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

Systemy operacyjne 11

Skrypty startowe. Tryb interaktywny tryb logowania: nie logowanie: Tryb nieinteraktywny

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

Wprowadzenie do programowania w powłoce

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

Linuks skrypty Część teoretyczna

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

Wprowadzenie do programowania shella (bash)

PRACOWNIA INFORMATYCZNA CHARAKTERYSTYKA PRZEDMIOTU BASH - PODSTAWOWE INFORMACJE

Filtry, metaznaki, cytowania. Proste skrypty. Polecenia find, tee, mail.

Programowanie w BASH u Skrypt do ćwiczeń

Tworzenie skryptu: Skrypty powłoki

Trochę o plikach wsadowych (Windows)

Strona1. Linux. Skrypty powłoki

J ezyk AWK Kurs systemu UNIX

Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I

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

Systemy operacyjne. Laboratorium 1. Podstawy oraz powłoka BASH

Podstawy programowania skryptów Sh

Wstęp do systemów wielozadaniowych laboratorium 14 Środowisko i aliasy

Bash - instrukcje warunkowe, pętle i funkcje

SYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy)

BASH - WPROWADZENIE Bioinformatyka 4

Kurs pisania skryptów w powłoce BASH

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

Wprowadzenie do tworzenia skryptów dla bash

Pracownia Komputerowa wyk ad III

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Laboratorium 5 Podstawy budowy skryptów w systemie UNIX cz. 1

KARTA KURSU. Języki skryptowe

Ćwiczenie nr 14: System Linux

Przedmiot: SYSTEMY OPERACYJNE Czas trwania: semestr IV Przedmiot: obowiązkowy Język wykładowy: polski POZIOM

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

Konsola i interpreter poleceń

Podstawy informatyki

Systemy operacyjne. Laboratorium 7. Perl podstawy. Jarosław Rudy Politechnika Wrocławska 27 kwietnia 2017

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

PODSTAWY INFORMATYKI

Technologie Informacyjne - Linux 2

Kurs systemu Unix wykład wstępny. Kurs systemu Unix 1

chmod +x skrypt /bin/bash nazwa_skryptu ZMIENNA=123 ZMIENNA="wartość tekstowa" SCIEZKA="$HOME/plik" echo $SCIEZKA

Systemy operacyjne 10

Programowanie BASH w Linuxie Zadania część 1

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

Uruchamianie programów w systemie Linux, potoki, strumienie, procesy, alias

Laboratorium Ubuntu Linux.

Pracownia Informatyczna I ORGANIZACJA ZAJĘĆ, ZASADY ZALICZENIA

Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe. stderr

Podstawy programowania w Bash'u

11. Wstęp do skryptów w Linuxie

Umieszczanie kodu. kod skryptu

System Linux - użytkowanie

Pracownia komputerowa. Dariusz wardecki, wyk II

Pierwsze spotkanie kóªka linuksowego

Wstęp do obsługi Linux a

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

5. Linux - powłoka Kilka słów o powłoce Zmienne systemowe

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

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

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ć

Narzędzia informatyczne w językoznawstwie

Informatyka 1. Wyrażenia i instrukcje, złożoność obliczeniowa

Systemy operacyjne na platformach mobilnych 2 Podstawy obsługi powłoki Bash

Wiersz poleceń Windows

Transkrypt:

Powłoka bash Kurs systemu Unix 1

Skrypty powłoki Skrypt powłoki to plik tekstowy, rozpoczynający się sekwencją: #!/usr/local/bin/bash # taki sobie skrypt lub podobną. Polecenie: sekwencja napisów, odzielonych białymi znakami. Pierwszy napis (nr 0) to nazwa polecenia lub skryptu powłoki Pozostałe parametry przekazywane jako argumenty do polecenia. Aby skrypt mógł być wykonany przez jakąś osobę, musi ona mieć do tego prawo. Kurs systemu Unix 2

Dygresja (1) Tego, gdzie znajduje się dane polecenie możemy się dowiedzieć za pomocą polecenia which, pisząc na przykład: which bash Kurs systemu Unix 3

Zmienne i podstawienie Przypisywanie wartości imie=ala (bez spacji, dlaczego?) Obliczanie wartości arytmetycznych echo $[1+1] (polecenie echo wypisuje argument na standardowym wyjściu) Odczytywanie wartości echo $imie echo $nowa_zmienna echo katalog= ls przypisuje zmiennej katalog wynik działania polecenia ls Inna składnia: katalog=$(ls) Kurs systemu Unix 4

Zmienne powłoki $HOME $PATH $USER $TERM $PS1 $PS2 $SECONDS $HISTFILE $RANDOM katalog domowy użytkownika lista (:) kartotek do przeszukiwania identyfikator użytkownika typ terminala (vt100) znak zachęty pierwszego poziomu znak zachęty drugiego poziomu liczba sekund działania powłoki nazwa pliku z historią liczba pseudolosowa z zakresu 0-32K (zawsze inna) Kurs systemu Unix 5

Parametry pozycyjne Gdy wywoływany jest skrypt, powłoka tworzy zmienne dla wartości parametrów. $0 nazwa polecenia $1, $2,... $9, ${10}, ${11},... parametry shift $n = $(n+1) $# liczba argumentów $* cała lista argumentów Kurs systemu Unix 6

Rozwijanie nazw plików Znaki specjalne: * pasuje do dowolnego ciągu znaków? pasuje do dowolnego znaku [abc] pasuje do dowolnego znaku z listy [1-6] pasuje do dowolnego znaku pomiędzy Przykładowo: lpr chap[1-4].? Rozwijanie wykonuje powłoka, jak chcemy przekazać do skryptu parametr *, to musimy napisać * albo "*". Kurs systemu Unix 7

Polecenie alias Za pomocą polecenia alias można tworzyć skróty często uzywanych poleceń: alias bye= logout alias cp= /bin/cp -i alias deltree= /bin/rm -r alias dir= ls -l alias hi= history tail alias ki= kill -9 alias lg= logout alias bez argumentu wypisze zdefiniowane skróty. unalias <nazwa-skrótu> usuwa skrót Kurs systemu Unix 8

Więcej o zmiennych Polecenie export tworzy zmienną dostępną dla powłok potomnych. Przykład: export imie=pawel Polecenie env wypisuje wszystkie zmienne eksportowane. Polecenie set wypisuje wszystkie zmienne Po wykonaniu sekwencji: zm1=1; export zm2=2 env grep "zm1"; env grep "zm2" wypisze zm1=1 set grep "zm1"; set grep "zm2" wypisze zm1=1, zm2=2. Kurs systemu Unix 9

Dygresja (2) Uruchamiając skrypt tworzymy zawsze powłokę potomną. Kurs systemu Unix 10

Cytowanie Apostrof ( ) cytowanie bez żadnych podstawień Cudzysłów Podstawiane zmienne, wyniki komend, ale nie znaki specjalne (*,?) Jeżeli cudzysłowy są zagnieżdżone, tylko zewnętrzne mają znaczenie Za pomocą \ można ukryć dowolny symbol, na przykład sprawić, by spacja nie była separatorem. Kurs systemu Unix 11

Przyklady wenus:prych:~> zm=ala wenus:prych:~> echo "Wartosc zm to $zm" Wartosc zm to Ala wenus:prych:~> echo Wartosc zm to $zm Wartosc zm to $zm wenus:prych:~> echo "Cena to $5" Cena to wenus:prych:~> echo "Cena to \$5" Cena to $5 Kurs systemu Unix 12

Mechanizm here-documents Przekazywanie programom wielolinijkowych tekstow cat <<!END! Ten tekst (w skrypcie powloki) zostanie wyswietlony w dwoch linijkach!end! Umożliwia sterowanie interakcyjnymi programami ze skryptów powłoki. Kurs systemu Unix 13

Pętla for Pozwala powtarzac pewne czynosci dla kolejnych wyrazow z listy: Składnia: Przykład for zm in lista do <polecenia> done for plik in *.txt do cp $plik $plik.bak done Kurs systemu Unix 14

Polecenie test test wyrażenie [ wyrazenie ] Używane z poleceniami sterującymi powłoki: if [ "$1" == "hej" ] then echo Pierwszy parametr to \"hej\" fi Pominięcie "" prowadzi do katastrofy, gdy $1 nieokreślone. Uwaga na spacje po [ i przed ]! Kurs systemu Unix 15

Operatory całkowitoliczbowe polecenia test i1 -eq i2 i1 -ge i2 i1 -gt i2 i1 -lt i2 i1 -le i2 i1 -ne i2 e1 = e2 e1 e2 e1 > e2 e1 < e2 e1 e2 e1 e2 Kurs systemu Unix 16

Operatory tekstowe polecenia test t1 = t2 rowność tekstów (można też ==) t1!= t2 rożność tekstów t1 prawdziwy, gdy t1 jest zdefiniowany (niepusty) -n t1 prawdziwy, gdy tekst jest niepusty -z t1 prawdziwy, gdy tekst jest pusty Kurs systemu Unix 17

Operatory plikowe polecenia test -d plik prawdziwy, gdy plik jest kartoteką -f plik prawdziwy, gdy plik istnieje i jest regularny -r plik prawdziwy, gdy plik może być czytany -w plik prawdziwy, gdy do pliku można pisać -s plik prawdziwy, gdy plik ma dlugosc dodatnią -x plik prawdziwy, gdy plik jest wykonywalny Kurs systemu Unix 18

Operatory logiczne polecenia test! w wyrazenie w jest fałszywe w1 -a w2 oba wyrażenia sa prawdziwe w1 -o w2 przynajmniej jedno jest prawdziwe Kurs systemu Unix 19

Pętla while Znaczenie jak z innych jezyków programowania. Składnia: Przykład while wyrazenie do <polecenia> done n=1 while [ $1 ] do echo $n $ -- $1 n= $[ n + 1 ]; shift done Kurs systemu Unix 20

Polecenie if Zwykla instrukcja warunkowa: if wyrazenie then <polecenia> else <polecenia> fi Przyklad: if [ -f.profile ]; then echo "Jest!"; fi Kurs systemu Unix 21