bash.pdf
(
101 KB
)
Pobierz
106293329 UNPDF
Powloka Bash
Pawel Bielecki
13 stycznia 2004
Spis tresci
1 Wprowadzenie.
2
2 Uruchamianie powloki.
2
3 Wprowadzenie polecen
2
4 Edytowanie Linii polecen. 3
4.1 Operacje na pojedynczych znakach. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4.2 Poruszanie si e po linii. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
5 Uzupelnianie Polecen.
3
6 Historia polecen.
4
7 Aliasy.
5
8 Skrypty Bash. 6
8.1 Zmienne programowe(ang. program variables) . . . . . . . . . . . . . . . . . . . . . . 6
8.2 Zmienne specjalne (ang. special variables, special parameters) . . . . . . . . . . . . . 7
8.3 Zmienne srodowiskowe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.4 Instrukcja warunkowa if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
8.5 Instrukcja case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
8.6 Petla for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
8.7 Petla select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
8.8 Petla while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
8.9 Petla until . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
8.10 Funkcje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
8.11 Interpretacja wyrazen arytmetycznych. . . . . . . . . . . . . . . . . . . . . . . . . . . 13
8.12 Polecenie let . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1
1 Wprowadzenie.
Powloka shell to program, ktory przyjmuje polecenia uzytkownikow i uruchamia inne programy.
Kiedy uzytkownik si e zaloguje, pierwsz a widzian a przez niego rzecz a jest zgloszenie si e powloki (shell
prompt). Dost epnych jest wiele roznych powlok dla Linuxa (na przyklad Kerna, Bourne'a, csh, tcsh);
ta ktora jest uruchamia si e po zalogowaniu, jest okreslona jego wpisem w pliku /etc/passwd.
Bush to skrot od Broune Again Shell, co wi aze si e z faktem, ze powloka ta jest wzorowana na
innej powloce, a mianowicie powloce Bourne. Wszystkie wbudowane polecenia powloki Bourne'a s a
dost epne takze w Bashu.
2 Uruchamianie powloki.
Powloki s a zwykle wywolywane podczas logowania uzytkowania. Program loguj acy sprawdza w pliku
/etc/passwd, jak a powloke przypisal danemu uzytkownikowi administrator systemu. Jezeli nie jest to
Bash, mozna wywolac program bash z innej powloki, wpisuj ac /bin/bash w linii polecen. Mozna uzyc
nast epuj acych metod:
- norc - Nie odczytuje plikow inicjacyjnych/.bashre w przypadku wywolania interaktywnej
powloki.
- rcle nazwa pliku { Wykonuje polecenie ze wskazanego pliku.
- noprole { Nie wczytuje systemowego pliku startowego /etc/prole ani zadnego osobistego pliku.
- version { Wyswietla informacje o wersji.
- login { Sprawi, ze powloka dziala tak jak gdyby zostala bezposrednio wywolana przez program
login.
3 Wprowadzenie polecen
Pierwszy kontakt z bash nast epuje podczas normalnego wprowadzania polecen. Bash wspomaga nas
duz a liczb a skrotow klawiaturowych i klawiszy specjalnych. W szczegolnosci mozna uzywac klaw-
iszy kursora [w gore] i [w dol] do powtornego wykonywania najcz esciej wprowadzanych polecen, co
oszcz edza wiele mozolnego wpisywania. Po wylogowaniu si e z powloki, ostatnio uzywane polecenia
zostan a zapisane w pliku i w ten sposob b ed a dost epne podczas nast epnej sesji (jezeli pracujemy pod
t a sam a nazw a uzytkownika na kilku terminalach, tylko polecenia jednego z tych terminali b ed a za-
chowane). Wiersze polecen mog a byc edytowane w ten sam sposob jak w edytorze tekstowym, mozna
wstawiac i usuwac znaki w dowolnym miejscu. Mapowanie klawiatury w bash jest niemal calkowicie
kongurowalne. W szczegolnosci mozna przypisywac swoje wlasne polecenia do klawiszy specjalnych
(takich jak klawisze funkcyjne i klawisze kursora). Poza tym mozna przel aczac si e pomi edzy try-
bami emacs oraz vi. Dlatego dla wszystkich podstawowych polecen edycji odnosz a si e te same skroty
klawiaturowe, co w wybranym edytorze. Zazwyczaj standardowym ustawieniem jest emacs.
2
4 Edytowanie Linii polecen.
Wpisuj ac z klawiatury polecenia powloki, korzysta si e w istocie z prostego, liniowego miniedytora,
nieco podobnego do edytora DOSKEYS pod MS-DOS. Bush zawiera bardo duzo sekwencji znakow,
sluz acych do edytowania linii polecenia.
4.1 Operacje na pojedynczych znakach.
<
Ctrl
>
-b lub Strzalka w prawo Przesuwa kursor o jeden znak w tyl.
<
Ctrl
>
-f lub Strzalka w lewo Przesuwa kursor o jeden znak w przod.
<
Del
>
Usuwa znak na lewo o kursora.
<
Ctrl
>
- d Usuwa znak pod kursorem.
<
Ctrl
>
- u Cofa ostatnio dokonan a zmian e (usuwa ostatnio wpisany
znak).
4.2 Poruszanie si e po linii.
<
Ctrl
>
-a Przesuwa kursor na pocz atek lini.
<
Ctrl
>
-e Przesuwa kursor na koniec linii.
<
Meta
>
-f Przesuwa kursor o jedno slowo w przod.
<
Meta
>
-b Przesuwa kursor o jedno slowo w tyl.
<
Ctrl
>
-l Czysci ekran i wyswietla na gorze biez ac a lini e.
<
Ctrl
>
-k Usuwa tekst od pozycji kursora do konca linii.
<
Meta
>
-d Usuwa tekst od pozycji kursora do konca biez acego slowa, jesli kursor
znajduje si e w srodku slowa to tekst do do konca nast epnego slowa.
<
Meta
>
-del Usuwa tekst od pozycji kursora do pocz atku biez acego slowa, a jesli kursor jest
mi edzy slowami { do pocz atku poprzedniego slowa.
<Ctrl>-y Wstawia ostatnio usuni ete slowo w miejsce kursora.
Oprocz sekwencji klawiszy pozwalaj acych edytowac lini e polecenia, powloka interpretuje tez kilka
innych sekwencji, ktore steruj a wykonaniem aktualnie aktywnego programu.
[Ctr1+C] Wysyla sygnal przerwania do aktualnie wykonywanego polecenia, co z
reguly powoduje, ze odpowiedni proces zostaje zakonczony.
[Ctr1+D] Wysyla znak konca pliku do aktualnie wykonywanego polecenia uzyj
tej sekwencji do zakonczenia wprowadzania danych z klawiatury.
[Ctr1+Z]
5 Uzupelnianie Polecen.
Dokanczanie polecen jest bardzo wygodn a i przyspieszaj ac a prac e opcji powloki Bash. Dzi eki niej
nie musimy juz wpisywac pelnej nazwy programu (sciezki do katalogu, pliku itp.) lub znac jego
dokladnej nazwy. Wystarczy, ze wpiszemy jego pierwsz a literke i wcisniemy klawisz TAB. Wtedy
Linux sprobuje wyszukac wszystkie dost epne programy, katalogi, pliki, ktorych pierwsza litera nazwy
3
Wstrzymuje (czasowo) wykonywanie aktualnie aktywnego programu.
odpowiada wpisanej przez nas. Jesli wi ecej programow zaczyna si e na t e sam znak powloka wylis-
tuje nam ich nazwy i poinformuje nas za pomoc a brz eczyka, ze nalezy podac dodatkowe informacje.
Dzieje si e to zazwyczaj, gdy podamy tylko jedn a, b adz dwie pierwsze litery, ale juz np. wpisanie mut
i wcisni ecie TAB, najprawdopodobniej spowoduje poprawne dokonczenie nazwy programu na mutt !
Jesli wpiszemy nazw e z bl edem np. mot, ktore nie ma odniesienia w rzeczywistosci i nacisniemy TAB
interpreter poinformuje nas o bl edzie wydaj ac z brz eczyka systemowego charakterystyczny dzwi ek.
Jest to dla nas sygnal, ze cos jest nie w porz adku i nalezy poprawic.
Spis najcz esciej uzywanych polecen uzupelniaj acych:
<TAB> Probuje uzupelnic tekst znajduj acy si e przed kursorem.
<
Meta
>
-? Wyswietla mozliwe uzupelniania tekstu znajduj acego si e pod kursorem.
<
Ctrl
>
-x-
<
Ctrl
>
-r Wczytuje zawartosc pliku inicjacyjnego i uwzgl ednia wszystkie
znajduj ace si e tam powi azania i przypisania zmiennych.
<
Esc
>
Sprawia, ze nast epny znak b edzie traktowany tak, jakby zostal nacisni ety
razem z klawiszem
<
Meta
>
.
<
Meta
>
- r Cofa wszystkie modykacje biez acej linii.
<
Ctrl
>
- Przyrostowe cofanie zmian, zapami etywane oddzielnie dla kazdej linii.
6 Historia polecen.
Bash zapami etuje wydane przez uzytkownika polecenia. Dzi eki temu za pomoc a klawiszy kursora
(gora - dol), mozemy szybko przywolac polecenie, ktore juz wczesniej wydalismy. Jest to szczegolnie
przydatne, gdy w bardzo skomplikowanym poleceniu zmieniamy np. tylko nazw e pliku, na ktorym
ma zostac wykonane, a cala skladnia polecenia nie ulega modykacjom. Lista wydanych przez nas
polecen jest ladowana z pliku historii, ktory domyslnie nosi nazw e .bash history. Parametry nazwy
pliku historii oraz ilosci przechowywanych w nim ostatnio wydanych polecen ustalaj a zmienne HIST-
FILE oraz HISTSIZE. W tym miejscu warto zaznaczyc, ze w wielu dystrybucjach Linuksa zmienna
HISTSIZE ma wartosc 1000 co powoduje, ze w pliku .bash history zapisywanych jest 1000 wydanych
ostatnio polecen.
<Enter> Przyjmuje linie niezaleznie od polozenia kursora.
<
Ctrl
>
-p lub Strzalka do gory Przechodzi w gor e listy historii.
<
Ctrl
>
-n lub Strzalka do dolu Przechodzi w dol listy historii.
<
Meta
>
-
<
Przechodzi do pierwszej linii historii.
<
Meta
>
-
>
Przechodzi do ostatniej linii historii.
<
Ctrl
>
-r Przeszukuj w tyl, zaczynaj ac od biez acej linii i w razie potrzeby poruszaj ac si e
w gor e listy historii.
<Ctrl>-s Przeszukuj w przod, zaczynaj ac od biez acej linii i w razie potrzeby poruszaj ac
si e w dol listy historii.
<
Meta
>
-p Szuka calego wpisanego slowa w tyl, zaczynaj ac od biez acej linii i w razie
potrzeby poruszaj ac si e w gor e listy historii.
4
<
Meta
>
-n Szuka calego wpisanego slowa w przod, zaczynaj ac od biez acej linii i w razie
potrzeby poruszaj ac si e w gor e listy historii.
<
Meta
>
-
<
Ctrl
>
-y Wstawia argument poprzedniego polecenia.
<
Meta
>
-. Lub
<
Meta
>
- Wstawia ostatni argument poprzedniego polecenia.
Istnieje tez metoda innego dost epu do historii polecen:
! Zaczyna podstawianie polecen z historii.
!! Jest to synonim zapisu !-1.
!n Oznacza n-t a linie polecenia.
!-n Oznacza polecenie odlegle o n linii w tyl.
!lancuch Oznacza pierwsze z uprzednio wydanych polecen zaczynaj acych si e od lancuch.
!?lancuch[?] Oznacza pierwsze z uprzednio wydanych polecen zawieraj acych lancuch.
!# Oznacza cal a linie polecenia wpisan a do tej pory.
Oprocz tych polecen istniej polecenie history, ktore wyswietla listing historii polecen.
history [N] [[-w {r {a {n] [ Nazwa pliku]]
-w Zapisuje biez ac a histori e w pliku historii.
-r Wczytuje plik historii i wypelnia list e historii jego zawartosci a.
-a Dodaje nowe linie historii.
-n Wczytuje linie historii jeszcze nie odczytane z pliku historii i umieszcza je na liscie
historii.
7 Aliasy.
Aliasy to mechanizm powloki, ktory umozliwia utworzenie skroconych wersji cz esto uzywanych pole-
cen. Aliasy tworzy si e, wpisuj ac slowo
"
alias", sekwencj e znakow, ktora b edzie nowym aliasem, znak
rownosci, a wreszcie wartosci, do ktorej alias b edzie rozwijany.
Alias [Nazwa[=wartosc]...]
Bez argumentow wyswietla aktualn a list e aliasow. W innym przypadku deniuje alias. Kiedy zostanie
wpisana
"
wartosc" i wykonuje
"
wartosc" jako polecenie.
Alias [-a][nazwa]
Usuwa okreslon a nazwe z list aliasow. Opcja {a powoduje usuni ecie wszystkich aliasow.
Przyklady:
alias rm='rm -i'
alias cp='cp -i'
5
"
nazwa" , bash zmienia j a na
Plik z chomika:
zajec11
Inne pliki z tego folderu:
r10.pdf
(150 KB)
r09.pdf
(103 KB)
r08.pdf
(124 KB)
r07.pdf
(316 KB)
r06.pdf
(96 KB)
Inne foldery tego chomika:
Pliki dostępne do 01.06.2025
Pliki dostępne do 19.01.2025
▣ ARANŻE PODKŁADY MP3
Alkohole
Alkoholowe przepisy
Zgłoś jeśli
naruszono regulamin